Mercurial > hg > Game > Cerium
diff TaskManager/kernel/ppe/TaskManagerImpl.cc @ 941:fc6cfaae6de7 draft
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 | e01b551f25d6 |
children | 9ed1c4a877ca |
line wrap: on
line diff
--- a/TaskManager/kernel/ppe/TaskManagerImpl.cc Sat Jul 31 16:44:10 2010 +0900 +++ b/TaskManager/kernel/ppe/TaskManagerImpl.cc Sat Jul 31 17:50:38 2010 +0900 @@ -94,6 +94,7 @@ TaskManagerImpl::set_task_depend(HTaskPtr master, HTaskPtr slave) { TaskQueuePtr m, s; + if (!master->self) return; m = taskQueueImpl->create(master); s = taskQueueImpl->create(slave); @@ -118,8 +119,6 @@ } else { append_waitTask(task); } - - // systask_finish->wait_for(task); } @@ -194,7 +193,8 @@ // id かななんかでチェックした方が良いが... me->self = 0; - htaskImpl->free_(me); + if (!me->flag.no_auto_free) + htaskImpl->free_(me); } /**