4 * Created on: Sep 1, 2010
7 #ifndef WAITINGQUEUE_H_
8 #define WAITINGQUEUE_H_
13 struct TraverserData {
20 struct TraverserData array[NUMITEMS];
21 struct BinVector * next;
26 struct BinVector * head;
27 struct BinVector * tail;
32 //TODO in the future, remove this struct all together
34 struct BinElement * array;
37 void put(int allocSiteID, struct WaitingQueue * queue, int effectType, void * resumePtr, int traverserID);
38 int check(struct WaitingQueue * queue, int allocSiteID);
39 struct WaitingQueue * mallocWaitingQueue(int size);
40 void returnVectorToFreePool(struct BinVector *ptr);
41 void resolveChain(struct WaitingQueue * queue, int allocSiteID);
42 struct BinVector * mallocNewVector();
43 struct BinVector * getUsableVector();
44 struct BinVector * getUsableVector();
46 #endif /* WAITINGQUEUE_H_ */