view TaskManager/kernel/ppe/HTask.cc @ 518:125a72948e44

....
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 16 Oct 2009 17:57:17 +0900
parents 735f76483bb2
children 5c76db2a07fa
line wrap: on
line source

#include "HTask.h"
#include "ListData.h"
#include "TaskManagerImpl.h"


void
HTask::spawn()
{
    mimpl->spawn_task(this);
}

/*!
  @brief この Task が待ち合わせする Task を指定する
  @param[in] master この Task が終了待ち合わせをする相手の Task
  
  繰り返し使用する事で複数の Task を待ち合わせする事ができる。

  wait_for している Task の入力バッファにこの Task から書き込みできる機能があると良い
 */

void
HTask::wait_for(HTaskPtr master)
{
    TaskQueuePtr m, s;

    m = wait_i->create(master);
    s = wait_i->create(this);

    master->wait_me->addLast(s);
    this->wait_i->addLast(m);
    s->waiter = m;

}