当前位置: 首页 > 网络知识

Qt 专门的宏Q_GLOBAL_STATIC,用来实现线程安全的单例模式

时间:2026-01-27 08:40:11

Qt本身就提供了专门的宏 Q_GLOBAL_STATIC。通过这个宏不但定义简单,还可以获得线程安全性。

1、先看官方文档

doc.qt.io/qt5/qglobalstatic

doc.qt.io/qt5/threadsreentrancy

2、再看使用方法

Q_GLOBAL_STATIC(Type, VariableName)

Q_GLOBAL_STATIC_WITH_ARGS(Type, VariableName, Arguments)

3、举例说明

rule.h

1 #ifndef RULE_H 2 #define RULE_H 3 #include <QGlobalStatic> 4 #define RULE Rule::instance() 5 class Rule 6 9 virtual ~Rule() 10 public: 11 static Rule* instance(); 12 public: 13 void test(); 14 }; 15 #endif // RULE_H

rulepp

1 #include "rule.h" 2 Q_GLOBAL_STATIC(Rule, rule) 3 Rule* Rule::instance() 4 7 void Rule::test() 8

在任何地方,引用头文件 include "rule.h"

就可以Rule::instance()>test();

或者使用宏RULE>test();



上一篇:ITK 旋转方向位置不变
下一篇:SimpleITK 三维图像分析
Qt
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素