view src/parallel_execution/Queue.cbc @ 456:95f58f2b2c0e

Add TaskIterator
author Tatsuki IHA <innparusu@cr.ie.u-ryukyu.ac.jp>
date Mon, 11 Dec 2017 16:26:55 +0900
parents fb50cf8aa615
children
line wrap: on
line source

typedef struct Queue<Impl>{
        union Data* queue;
        union Data* data;
        __code whenEmpty(...);
        __code clear(Impl* queue, __code next(...));
        __code put(Impl* queue, union Data* data, __code next(...));
        __code take(Impl* queue, __code next(union Data*, ...));
        __code isEmpty(Impl* queue, __code next(...), __code whenEmpty(...));
        __code next(...);
} Queue;