背景: 我正在编写一个高性能的C++11应用程序,其中一部分是删除不活动的连接。为此,我在连接对象中存储“最后活动”时间戳,在执行操作时更新。然后我有一个定时器,每隔几秒钟运行一次,循环遍历所有会话并删除不活动的连接。
目前我正在使用以下代码获取当前时间戳:
timestamp = duration_cast<milliseconds>(system_clock::now().time_since_epoch()).count()
我想知道是否有更快的方法来获取时间戳?我所说的更快是指获取时间戳本身的性能,而不是时间戳的分辨率。
对于我的特定应用程序来说,分辨率并不重要,可以低至一秒。此外,utc/local并不重要,我只是使用时间戳将其与通过相同方法获得的其他时间戳进行比较。
我希望保持跨平台性,但也欢迎具有条件编译的平台特定优化。
timestamp = system_clock::now();
呢? - nwp