
Chromium
文章平均质量分 92
hang_ning
这个作者很懒,什么都没留下…
展开
-
Chromium 中的单例模板实现方法分析
Chromium 中的单例模板实现方法分析前言由于 c++ 的编译器可以保证函数内部静态成员的初始化唯一,因此在类内定义的静态成员变量天然的线程安全,并且局部静态变量仅在执行时才会初始化,因此也是懒汉模式的单例。在chromium base 库中存在 StaticSingleton 和 LazyInstance 模板, LazyInstance本身是为了定义懒汉模式的线程安全单例; StaticSingleton 提供了单线程和线程安全的静态单例方法,实际上这LazyInstance模板可以废弃了,而原创 2021-12-07 20:13:32 · 529 阅读 · 0 评论 -
Chomium MessageLoop实现原理
Chromium Message Loop主要类和功能MessagePump(LibEvent)如果是UI线程和IO线程会使用MessagePumpLibEvent 实现,其他线程则使用MessageDefault. 前者利用libEvent 的事件驱动特性,后者使用event 信号来控制线程阻塞和唤醒。当线程启动时,线程的入口函数ThreadMain会创建并启动 MessagePump, 开始任务轮转,该类会不断的向ThreadControllerWithMessagePumpImpl 发出D原创 2021-11-20 16:56:13 · 1722 阅读 · 0 评论