int RiCOSTask_getTaskEndClbk (RiCOSTask * const me, RiCOSTaskEndCallBack * clb_p, void ** arg1_p, RiCBoolean onExecuteTask);
me
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;}