Mercurial > hg > Members > kono > Cerium
comparison TaskManager/kernel/ppe/TaskManagerImpl.h @ 941:0c11c2fd7e63
add no_auto_free flag on HTask
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 31 Jul 2010 17:50:38 +0900 |
parents | 586b4f825f24 |
children | 9989dd7b9ac2 |
comparison
equal
deleted
inserted
replaced
940:0d404f6c36a8 | 941:0c11c2fd7e63 |
---|---|
52 virtual void set_task_depend(HTaskPtr master, HTaskPtr slave); | 52 virtual void set_task_depend(HTaskPtr master, HTaskPtr slave); |
53 virtual void spawn_task(HTaskPtr); | 53 virtual void spawn_task(HTaskPtr); |
54 virtual void set_task_cpu(HTaskPtr, CPU_TYPE); | 54 virtual void set_task_cpu(HTaskPtr, CPU_TYPE); |
55 void set_taskList(HTaskPtr htask, TaskListInfoPtr taskList) ; | 55 void set_taskList(HTaskPtr htask, TaskListInfoPtr taskList) ; |
56 | 56 |
57 void free_htask(HTaskPtr htask) { | |
58 #if !defined(__SPU__) | |
59 if (htask->self) { | |
60 htask->flag.no_auto_free = 0; | |
61 return; | |
62 } | |
63 htaskImpl->free_(htask); | |
64 #endif | |
65 } | |
66 | |
57 void* allocate(int size, int alignment) | 67 void* allocate(int size, int alignment) |
58 { | 68 { |
59 void *buff = 0; | 69 void *buff = 0; |
60 if (size==0) return 0; | 70 if (size==0) return 0; |
61 #if defined(__SPU__) || ! defined(HAS_POSIX_MEMALIGN) | 71 #if defined(__SPU__) || ! defined(HAS_POSIX_MEMALIGN) |