В boost :: asio, как вы добавляете таймаут в цикл обслуживания? - PullRequest
1 голос
/ 14 февраля 2011

Абсолютно новый для Boost :: asio, я старый Unix Select type guy ...

Попытка получить доступ к функции тайм-аута select / epoll, чтобы выйти из цикла событий.Добавление таймера asio просто вызывает мой обработчик, но не позволяет мне выйти из цикла service.run ().Не хочу удалять службу, просто отключитесь на некоторое время и, возможно, позже перезапустите ее через service.run ().

В том же духе, как вы на некоторое время удаляете файловый дескриптор из цикла службыкак EPOLL_CTL_DEL.Затем добавить его позже, чтобы снова обслужить?

Спасибо

1 Ответ

1 голос
/ 14 февраля 2011

вызов io_service.stop () из вашего обработчика deadline_timer, поэтому io_service.run() вернет управление

...