在开发一个将带有时间戳的传入事件写入文件的模块时,我遇到了一个问题,我在 www.www 上找不到任何信息。希望你们中的一些人可以帮助我:
部分代码:
boost::posix_time::ptime micro_time = boost::posix_time::microsec_clock::local_time();
std::cout << "micro time: " << micro_time << std::endl;
boost::posix_time::ptime utc_time(boost::posix_time::second_clock::universal_time());
std::cout << "utc time: " << utc_time << std::endl;
它工作得很好,但是两个时间戳之间存在 1 秒的不匹配。这 4 个事件紧随其后发生,但事件 3 出现了问题。但就在它之后,一切又好了。
1. event (good):
micro time: 2012-May-11 13:13:32.002949
utc time: 2012-May-11 11:13:32.003069
2. event (good):
micro time: 2012-May-11 13:13:32.003600
utc time: 2012-May-11 11:13:32.003716
3. event (bad):
micro time: 2012-May-11 13:13:32.004241
utc time: 2012-May-11 11:13:33.004411
4. event (good again):
micro time: 2012-May-11 13:13:32.004943
utc time: 2012-May-11 11:13:32.005073
我正在使用 32 位 Kubuntu 并提升库 1.46。有没有人对可能导致不匹配的原因有任何想法?