Как называется это свойство асинхронных действий. (увеличить asio)

Свойство можно описать так:если действие отменяется, оно 'Обработчик s гарантированно будет выполнен с ошибкой.

Например,повышение :: ASIO :: deadline_timer Безразлично»т это свойство, как описано вЗамечания раздел документации для deadline_timer :: cancel, Таким образом, возможно, что даже если вы отмените операцию ожидания на таймере, его обратный вызов будет выполнен без ошибок.

С другой стороны, свойство верно для сокетов asio (по крайней мере, я на это надеюсь :), поскольку в документации нет таких замечаний).

РЕДАКТИРОВАТЬ: псевдокод, демонстрирующий отсутствие этого свойства в таймеры крайнего срока:

1# User calls timer.async_wait with a handler H which is to be
   executed when the action finishes.
2# Time passes.
3# Timeout has been reached, asio internally inserts the handler H into
   a queue for later execution, but with error code indicating success.
   User is unaware of when this step takes place.
4# User calls cancel on the timer, thus would expect the handler to be
   executed with an error code indicating failure.
5# Asio takes the handler H from the queue and executes it with error
   code indicating success as set in the step #3.

Обойти эту проблему легко, просто установив логический флаг на шаге № 4, а затем отметив его на шаге № 5, так что это не проблема.

Ответы на вопрос(1)

Ваш ответ на вопрос