Мне нужно добавить поддержку таймеров в приложении на основе портов ввода-вывода ввода-вывода (IOCP). Я хотел бы избежать использования определенного потока для управления таймерами.Таймер, который поддерживает перекрывающиеся входы/выходы (для IOCP)?
В Linux вы можете создать таймер, который доставляет уведомления об истечении срока действия через файловый дескриптор (см. Timerfd.h man), поэтому отлично использовать его, например, с epoll, если ваше приложение основано на epoll.
В Windows, вы можете использовать "waitable таймеры" с асинхронным вызовом процедуры (ACP) (см http://msdn.microsoft.com/en-us/library/ms686898(v=VS.85).aspx)
Если вы заинтересованы, Kqueue (BSD, Mac OS) поддерживает таймеры по умолчанию (см EVFILT_TIMER) ,
С портами ввода-вывода ввода/вывода мы должны использовать объекты, которые поддерживают перекрывающиеся ввода-вывода. Итак, есть ли такой таймер для IOCP?
С наилучшими пожеланиями,
Cedrics