当前位置: 首页 > news >正文

网站建设 河南微信营销技巧

网站建设 河南,微信营销技巧,微信朋友圈营销技巧,市场营销的知名企业一、概述 1、在多线程编程中,为了防止多个线程同时访问共享资源而导致的不确定性和错误,经常会使用互斥锁(Mutex)进行保护。 2、QMutex是Qt提供的一个互斥锁类,用于确保在同一时间只有一个线程访问共享资源。 3、QM…

一、概述

1、在多线程编程中,为了防止多个线程同时访问共享资源而导致的不确定性和错误,经常会使用互斥锁(Mutex)进行保护。

2、QMutex是Qt提供的一个互斥锁类,用于确保在同一时间只有一个线程访问共享资源

3、QMutexLocker就是在使用QMutex时的便利工具类。它在构造函数中自动锁定给定的QMutex对象,并在析构函数中自动解锁。这样可以有效地保证锁的正确使用,避免由于异常或忘记解锁时而导致地资源泄露或死锁。

二、使用方式

方式一:

mutex.lock();
//这里处理共享资源
mutex.unlock();

方式二:

QMutexLocker locker(&mutex);
//这里处理共享资源

三、示例

1、未加锁:

//共享资源
int sharedValue = 0;
//互斥锁
QMutex mutex;class MThread : public QThread
{
public:void run() override{for(int i = 0; i < 5; i++){// 访问共享资源sharedValue++;qDebug() << "Thread ID: " << QThread::currentThreadId()<< "Shared Value: " << sharedValue;msleep(1000);}}
};int main(int argc, char *argv[])
{QApplication a(argc, argv);MThread thread1;MThread thread2;thread1.start();thread2.start();thread1.wait();thread2.wait();return a.exec();
}

运行结果:

2、加锁后 :

class MThread : public QThread
{
public:void run() override{for(int i = 0; i < 5; i++){QMutexLocker locker(&mutex);// 访问共享资源sharedValue++;qDebug() << "Thread ID: " << QThread::currentThreadId()<< "Shared Value: " << sharedValue;// 线程休眠1秒msleep(1000);}}
};

运行结果:

 结果分析:明显看出在未加锁情况下对临界资源的访问出现混乱的结果

http://www.hengruixuexiao.com/news/48441.html

相关文章:

  • css3实用网站一个新公众号怎么吸粉
  • 国内优秀个人网站如何做企业网页
  • 阿里建站系统什么叫优化
  • jsp商务网站建设seo页面优化公司
  • 三亚市住房和城乡建设局网站自己怎么免费做网站网页
  • 做网站什么的好东莞今日头条新闻
  • 平台型网站建设方案百度广告关键词价格表
  • 网站设计就业要求网站的优化公司
  • 北京专业网站的建设免费信息推广平台
  • 橙子落地页建站教程宜兴网站建设
  • 同服务器网站查询工具网络营销师是做什么的
  • 最好的网站开发公司电话深圳百度seo培训
  • 阿里云1M做网站如何注册一个网站
  • 优秀手机网站版式做网站用什么软件好
  • 广东营销网站建设服务天天自学网网址
  • 深圳做网站推广的公司郴州网站建设网络推广平台
  • b s网站建设方案及报价企业网站设计公司
  • 做网站需要什么许可证产品怎么做市场推广
  • iis5.1怎么新建网站展示型网页设计公司
  • 做外贸批发开什么网站百度 营销推广怎么做
  • 柳州企业网站建设价格淘宝指数查询工具
  • 怎么样让公司网站优化清理大师
  • 做网站的博客aso排名优化
  • 地方网站域名用全拼二级域名在线扫描
  • 怎样建设一个游戏网站软文广告营销
  • 上海b2b网络推广外包化工网站关键词优化
  • 吴江住房和城乡建设局网站google谷歌
  • 合肥做网站推广的公司兰州seo培训
  • 怎么做电商网站酒店seo是什么意思
  • 做的丑的网站有哪些知乎百度收录链接提交入口