で読むことができるように:
https://svn.boost.org/trac/boost/ticket/3504
定期的にタイムアウトし、deadline_timer :: Expires_at()を使用して実装されるdeadline_timer(Boost Timerチュートリアルの例の3番目の例のように)は、システム時刻が変更された場合(たとえば、オペレーティングシステムの場合はdateコマンドを使用した場合)に失敗する可能性がありますLinuxです)。
Boostを使用して、この操作を実行するための簡単で適切な方法はありますか?有効期限を「手動で」更新するよりも精度が低いことを確認できたため、deadline_timer :: Expires_from_now()を使用したくありません。
一時的な解決策として、新しいexpires_at値を設定する前に、now()とexpires_at()の間の期間を計算することにしました。定期的な遅延の2倍以上の場合は、例外的にexpires_from_now()を使用して新しい絶対時間と再同期します。