restore function ioevent_reset
parent
cbcd38a9af
commit
8d9feff6e2
|
|
@ -324,3 +324,19 @@ int ioevent_set(struct fast_task_info *task, struct nio_thread_data *pThread,
|
|||
fast_timer_add(&pThread->timer, &task->event.timer);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ioevent_reset(struct fast_task_info *task, int new_fd, short event)
|
||||
{
|
||||
if (task->event.fd == new_fd)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (task->event.fd >= 0)
|
||||
{
|
||||
ioevent_detach(&task->thread_data->ev_puller, task->event.fd);
|
||||
}
|
||||
|
||||
task->event.fd = new_fd;
|
||||
return ioevent_attach(&task->thread_data->ev_puller, new_fd, event, task);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,6 +38,8 @@ int ioevent_set(struct fast_task_info *task, struct nio_thread_data *pThread,
|
|||
int sock, short event, IOEventCallback callback,
|
||||
const int timeout, const bool use_iouring);
|
||||
|
||||
int ioevent_reset(struct fast_task_info *task, int new_fd, short event);
|
||||
|
||||
static inline bool ioevent_is_canceled(struct fast_task_info *task)
|
||||
{
|
||||
return __sync_fetch_and_add(&task->canceled, 0) != 0;
|
||||
|
|
|
|||
Loading…
Reference in New Issue