Mercurial > hg > GearsTemplate
view src/examples/boundedBuffer/consumer.cbc @ 590:9146d6017f18 default tip
hg mv parallel_execution/* ..
author | anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 16 Jan 2020 15:12:06 +0900 |
parents | src/parallel_execution/examples/boundedBuffer/consumer.cbc@62166b0e0c7e |
children |
line wrap: on
line source
#include "../../../context.h" #include <stdio.h> #interface "Buffer.h" __code consumer(struct Buffer* buffer, struct Integer* length, __code next(...), struct LoopCounter* loopCounter) { int i = loopCounter->i; if (i < length->value) { loopCounter->i++; goto buffer->take(consumer1); } goto next(...); } __code consumer1(struct Buffer* buffer, struct Integer* length, __code next(...), struct Node* node) { printf("getData %d\n", node->value->Integer.value); goto consumer(); } __code consumer1_stub(struct Context* context) { goto consumer1(context, &context->data[context->idg]->Buffer, &context->data[context->idg+1]->Integer, context->next, &Gearef(context, Buffer)->data->Node); }