• Home
  • Raw
  • Download

Lines Matching refs:task

27 static LE_STATUS HandleSignalEvent_(const LoopHandle loop, const TaskHandle task, uint32_t oper)  in HandleSignalEvent_()  argument
33 ssize_t s = read(GetSocketFd(task), &fdsi, sizeof(fdsi)); in HandleSignalEvent_()
35 SignalTask *sigTask = (SignalTask *)task; in HandleSignalEvent_()
44 BaseTask *task = (BaseTask *)signalHandle; in HandleSignalTaskClose_() local
45 CloseTask(loopHandle, task); in HandleSignalTaskClose_()
46 DelTask((EventLoop *)loopHandle, task); in HandleSignalTaskClose_()
47 close(task->taskId.fd); in HandleSignalTaskClose_()
59 SignalTask *task = (SignalTask *)CreateTask(loopHandle, sfd, &info, sizeof(SignalTask)); in LE_CreateSignalTask() local
60 LE_CHECK(task != NULL, return LE_NO_MEMORY, "Failed to create task"); in LE_CreateSignalTask()
61 task->base.handleEvent = HandleSignalEvent_; in LE_CreateSignalTask()
62 task->base.innerClose = HandleSignalTaskClose_; in LE_CreateSignalTask()
63 task->sigNumber = 0; in LE_CreateSignalTask()
64 sigemptyset(&task->mask); in LE_CreateSignalTask()
65 task->processSignal = processSignal; in LE_CreateSignalTask()
66 *signalHandle = (SignalHandle)task; in LE_CreateSignalTask()
74 SignalTask *task = (SignalTask *)signalHandle; in LE_AddSignal() local
75 LE_LOGI("LE_AddSignal %d %d", signal, task->sigNumber); in LE_AddSignal()
76 if (sigismember(&task->mask, signal)) { in LE_AddSignal()
79 sigaddset(&task->mask, signal); in LE_AddSignal()
80 sigprocmask(SIG_BLOCK, &task->mask, NULL); in LE_AddSignal()
81 int sfd = signalfd(GetSocketFd(signalHandle), &task->mask, SFD_NONBLOCK | SFD_CLOEXEC); in LE_AddSignal()
83 if (task->sigNumber == 0) { in LE_AddSignal()
84 loop->addEvent(loop, (const BaseTask *)task, Event_Read); in LE_AddSignal()
86 loop->modEvent(loop, (const BaseTask *)task, Event_Read); in LE_AddSignal()
88 task->sigNumber++; in LE_AddSignal()
96 SignalTask *task = (SignalTask *)signalHandle; in LE_RemoveSignal() local
97 LE_LOGI("LE_RemoveSignal %d %d", signal, task->sigNumber); in LE_RemoveSignal()
98 if (!sigismember(&task->mask, signal)) { in LE_RemoveSignal()
101 sigdelset(&task->mask, signal); in LE_RemoveSignal()
102 task->sigNumber--; in LE_RemoveSignal()
103 int sfd = signalfd(GetSocketFd(signalHandle), &task->mask, SFD_NONBLOCK | SFD_CLOEXEC); in LE_RemoveSignal()
105 if (task->sigNumber <= 0) { in LE_RemoveSignal()