Poco::DataTime
DataTime就是日期和时间,这两个东西的区别在于表示方法。日期往往要格式化为字符串,时间一般用长整形表示。时间可以精确到微妙,即秒的百万分之一。我见这个模块中,有一个表达是可以由微妙得到百纳秒的精度,但是没看懂
inline Timestamp::UtcTimeVal Timestamp::utcTime() const{return _ts*10 + (TimeDiff(0x01b21dd2) << 32) + 0x13814000;}这个模块中的类提供了时间戳(Timestamp),还有与之相关的时间差值(TimeDiff),秒表(StopWatch);以及UTC时间,本地时间,将时间格式化为字符串,及从字符串中解析出时间。
其中,时间戳在其他模块中用的,主要是超时的地方。日期在日志中用的。
底层实现:
UNIX:
gettimeofday, time
Windows:
GetSystemTimeAsFileTime