c++ - 我如何使用 C++ 和 boost 创建看门狗定时器

标签 c++ boost

创建 WatchDogTimer 类的最佳和最短方法是什么,它可以等待一段时间然后死掉?

所以当我在做类似的事情时

WatchDogTimer wdt (10);

wdt 仅在接下来的 10 秒内可用。

我该怎么做?

ps:是的,我看到了that线程,但实际上并没有帮助。

最佳答案

使用new 在堆上创建一个对象并将它交给一个shared_ptr。然后仅从退出前休眠 10 秒的线程中保留该共享指针。确保线程是 shared_ptr 的唯一实例,所有其他引用都是 weak_ptr。 10 秒后 weak_ptr::get() 将返回 null。

关于c++ - 我如何使用 C++ 和 boost 创建看门狗定时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5546985/

相关文章:

c++ - 通过索引从 QJsonObject 获取值

c++ - 从 SVN 更新 Boost Wave

c++ - boost::以下代码的任意替换

c++ - boost 表现力!接线员不工作

c++ - 用 boost 写一个 gz 流

c++ - 清除 multi_index_container

c++ - 使用函数而不是巨大的 if 语句向下转换指针

c++ - openGL:无法在相机前正确绘制球体

c++ - 使用线程对数组的两半进行排序,但仅对后半部分进行排序

c++ - Cpp/Cli 项目中的 Boost::Log 错误