diff TaskManager/Cell/CellTaskManagerImpl.cc @ 830:c7905ead974f

return TaskList->self
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 25 May 2010 17:28:05 +0900
parents ff684304e1d3
children 29094b48d966
line wrap: on
line diff
--- a/TaskManager/Cell/CellTaskManagerImpl.cc	Tue May 25 03:41:10 2010 +0900
+++ b/TaskManager/Cell/CellTaskManagerImpl.cc	Tue May 25 17:28:05 2010 +0900
@@ -161,10 +161,15 @@
 	        // MY_SPE_COMMAND_MALLOC   SPE からのmain memory request
 		send_alloc_reply(this, id, speThreads);
 	    } else if (data > (memaddr)MY_SPE_NOP) {
+#ifdef TASK_LIST_MAIL
+		TaskListPtr list = (TaskListPtr)data;
+		check_task_list_finish(schedTaskManager, list, waitTaskQueue);
+#else
 	        // 終了したタスク(PPEにあるのでアドレス)
 		HTaskPtr task = (HTaskPtr)data;
 		task->post_func(schedTaskManager, task->post_arg1, task->post_arg2);
-		check_task_finish(task,waitTaskQueue);
+		check_task_finish(task, waitTaskQueue);
+#endif
 	    }
 	    // MY_SPE_NOP: 特に意味のないコマンド
 	}