view src/parallel_execution/TaskManager.cbc @ 405:8915fce522b3

Fix shutdown TaskManager
author Tatsuki IHA <innparusu@cr.ie.u-ryukyu.ac.jp>
date Tue, 05 Sep 2017 16:46:31 +0900
parents fc4fcd441700
children 57c715bd6283
line wrap: on
line source

typedef struct TaskManager<Impl>{
    union Data* taskManager;
    struct Context* context;
    struct Context** tasks;
    __code spawn(Impl* taskManager, struct Queue* queue, struct Context* task, __code next(...));
    __code spawnTasks(Impl* taskManagerImpl, struct Context** tasks, __code next1(...), struct TaskManager* taskManager);
    __code shutdown(Impl* taskManagerImpl, __code next(...), struct TaskManager* taskManager, struct Queue* queue);
    __code incrementTaskCount(Impl* taskManagerImpl, __code next(...));
    __code decrementTaskCount(Impl* taskManagerImpl, __code next(...));
    __code next(...);
    __code next1(...);
    int worker;
    int cpu;
    int gpu;
    int io;
    int maxCPU;
} TaskManager;