gpt4 book ai didi

c++ - 需要解释这个 boost::asio 计时器示例

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:46:14 25 4
gpt4 key购买 nike

在 Boost asio 的第 3 教程中有一行显示了如何更新计时器并防止其漂移。该行如下:

 t->expires_at(t->expires_at() + boost::posix_time::seconds(1));

也许是我的问题,但我找不到关于 expires_at() 第二次使用的文档,没有参数。 expires_at(x) 设置新的到期时间,取消任何未决的完成处理程序。所以大概 expires_at() 做了什么,最后一次到期的返回时间?因此,通过增加一秒,如果应该有一定数量的毫秒,比如 n 毫秒,那么它实际上会从下一个到期时间中“减去”,因为时间正在计算中?如果在此示例中执行此处理程序所需的时间大于 1 秒,会发生什么情况?它会立即触发吗?

最佳答案

expires_at() 返回设置为超时的时间。所以这会将超时时间移到 1 秒后。

当您使用 expires_at(x) 设置时间时,如果由于时间已过而已被调用,您将返回 0。如果 return 大于 0,则表示已取消的次数。

关于c++ - 需要解释这个 boost::asio 计时器示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2481693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com