Only use EPOLLOUT while connecting

This commit is contained in:
Vitaliy Filippov
2020-06-23 20:18:31 +03:00
parent 8736b3ad32
commit a22d9f38aa
8 changed files with 22 additions and 18 deletions
+3 -3
View File
@@ -6,7 +6,7 @@
#include <string.h>
#include "timerfd_manager.h"
timerfd_manager_t::timerfd_manager_t(std::function<void(int, std::function<void(int, int)>)> set_fd_handler)
timerfd_manager_t::timerfd_manager_t(std::function<void(int, bool, std::function<void(int, int)>)> set_fd_handler)
{
this->set_fd_handler = set_fd_handler;
wait_state = 0;
@@ -15,7 +15,7 @@ timerfd_manager_t::timerfd_manager_t(std::function<void(int, std::function<void(
{
throw std::runtime_error(std::string("timerfd_create: ") + strerror(errno));
}
set_fd_handler(timerfd, [this](int fd, int events)
set_fd_handler(timerfd, false, [this](int fd, int events)
{
handle_readable();
});
@@ -23,7 +23,7 @@ timerfd_manager_t::timerfd_manager_t(std::function<void(int, std::function<void(
timerfd_manager_t::~timerfd_manager_t()
{
set_fd_handler(timerfd, NULL);
set_fd_handler(timerfd, false, NULL);
close(timerfd);
}