getTaskEndClbk

此方法是用于结束当前操作系统线程的回调函数。

特征符
int RiCOSTask_getTaskEndClbk (RiCOSTask * const me,
   RiCOSTaskEndCallBack * clb_p, void ** arg1_p,
   RiCBoolean onExecuteTask);
参数
me

这是 RiCOSTask 对象。

clb_p

这是指向用于结束线程的回调函数的指针。此参数可以是 endMyTask()endOtherTask()

arg1_p

这是回调函数的自变量。

onExecuteTask

将此参数设置为以下其中一个布尔值:

RiCTRUE - 对象应结束自己的任务。RiCFALSE - 另一个对象应结束此任务。
返回

状态。可能的值如下所示:

示例
int RiCOSTask_getTaskEndClbk(RiCOSTask * const me,
   RiCOSTaskEndCallBack * clb_p,
   void ** arg1_p, RiCBoolean onExecuteTask)
{
   if (me == NULL) return 0;

   if (onExecuteTask) {
      /* Ask for a callback to end my own thread. */
      *clb_p = (RiCOSTaskEndCallBack)&
         RiCOSTask_endMyTask;
      *arg1_p = (void*)me->hThread;
   }
   else {
      /* Ask for a callback to end my thread by
         someone else. */
      *clb_p  = (RiCOSTaskEndCallBack)&
         RiCOSTask_endOtherTask;
      /* My thread handle. */
      *arg1_p = (void*)me->hThread;
   }
   return 1;}

反馈