Mercurial > hg > Game > Cerium
view example/renew_task/spe/RenewStart.cc @ 2054:2e7a6f40672f draft
add param(4) in FileMapReduce.cc
author | masa |
---|---|
date | Fri, 29 Jan 2016 15:56:28 +0900 |
parents | f40558ec00a8 |
children |
line wrap: on
line source
#include <stdio.h> #include "RenewStart.h" #include "SpeProfile.h" #include "Func.h" /* これは必須 */ SchedDefineTask(RenewStart); static int run(SchedTask *s, void *rbuf, void *wbuf) { s->printf("[SPE] ** running RenewStart\n"); void *tmp = s->global_alloc(sizeof(SpeProfile), 0); // overlay で動くの? SpeProfile *profile = new (tmp) SpeProfile; int id = (long)s->get_param(0); s->printf("[SPE] Create Task : Renew1 %d\n", id); HTaskPtr nextTask = s->create_task(RENEW1); int *test_num = (int*)s->get_param(1); int *local_num = (int*)s->allocate(sizeof(int)); *local_num = 555; // この add_inData は、メインメモリのアドレスになる。 nextTask->set_inData(0,test_num, sizeof(int)); // local なアドレスを渡したい時には、set_param を使う。 nextTask->set_param(0,local_num); nextTask->spawn(); s->printf("[SPE] ** finish RenewStart\n\n"); profile->ProfStart(); return 0; }