log4cpp源码阅读:TimeStamp工具类
发布日期:2022-03-16 03:25:41
浏览次数:23
分类:技术文章
本文共 1375 字,大约阅读时间需要 4 分钟。
TimeStamp
功能
- 构建的时候,会获取当前URC的时间,可以从这个对象获取已经经过的秒数,也可以获取微秒部分。
实现
class LOG4CPP_EXPORT TimeStamp { public: TimeStamp(); TimeStamp(unsigned int seconds, unsigned int microSeconds = 0); inline int getSeconds() const { return _seconds; }; inline int getMilliSeconds() const { return _microSeconds / 1000; }; inline int getMicroSeconds() const { return _microSeconds; }; protected: int _seconds; int _microSeconds; };
内部成员非常简单:
- _seconds属性,来保存已经走过的秒数
- _microSeconds属性,表示已经做过的微秒数
具体值在构造函数中设置
- 构造函数:可以看出调用系统函数gettimeofday(),然后设置值。
TimeStamp::TimeStamp() { struct timeval tv; ::gettimeofday(&tv, NULL); _seconds = tv.tv_sec; _microSeconds = tv.tv_usec; }
- 构造函数:可以看出使用外部传入的值设置。
TimeStamp::TimeStamp(unsigned int seconds, unsigned int microSeconds) : _seconds(seconds), _microSeconds(microSeconds) { }
TimeStamp还有一个静态成员,代码如下:
class LOG4CPP_EXPORT TimeStamp { public: static inline const TimeStamp& getStartTime() { return _startStamp; }; protected: static TimeStamp _startStamp; ...
- 这个静态成员_startStamp在程序启动的时候,被程序自动构造,在其构造函数中获得当前utc时间
总结
TimeStamp,其对象保存了对象具体场景的时候,内部保存的秒数部分,和微秒部分。还提供 了获取应该启动时间的getStartTime()静态方法
转载地址:https://blog.csdn.net/zhizhengguan/article/details/123138273 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年03月30日 15时44分59秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
unity3D 在屏幕边框创建碰撞框
2021-06-30
unity3D 音频播放
2021-06-30
xml中常用的转义符
2021-06-30
腾讯MSDK手Q微信授权登录
2021-06-30
腾讯MSDK for Unity
2021-06-30
关于MSDK的几个难点
2021-06-30
使用UnityEditor做工具
2021-06-30
Visual Studio我常用的快捷键
2021-06-30
写C# dll供Unity调用
2021-06-30
Linux制作run安装包
2021-06-30
一分钟学会C#解析XML
2021-06-30
unity AssetBundle的资源管理
2021-06-30
【转】Unity中HideInInspector和SerializeField一起使用
2021-06-30
单例模板类
2021-06-30
Unity与java相互调用
2021-06-30
android截屏代码
2021-06-30
unity NGUI图文混排
2021-06-30
Unity项目优化
2021-06-30
Unity3D Shader 入门
2021-06-30
eclipse识别不到真机设备问题的解决
2021-06-30