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

月付商城网站建站seo能干一辈子吗

月付商城网站建站,seo能干一辈子吗,网站开发实现页面的跳转,天津哪家公司做企业网站编译环境#xff1a;Qt join#xff1a;阻塞当前线程#xff0c;直到线程函数退出 detach#xff1a;将线程对象与线程函数分离#xff0c;线程不依赖线程对象管理 注#xff1a;join和detach两者必选其一#xff0c;否则线程对象的回收会影响线程的回收#xff0c;导致…编译环境Qt join阻塞当前线程直到线程函数退出 detach将线程对象与线程函数分离线程不依赖线程对象管理 注join和detach两者必选其一否则线程对象的回收会影响线程的回收导致程序崩溃 思考执行detach之后的线程如何退出 方法设置标志位  #include dialog.h #includeiostream using namespace std; #include QDebug #includethread#include QApplicationint add(int a,int b) {qDebug()add;qDebug()ab ab;_sleep(1000);return ab; }class AA { public:AA(){//在构造函数中创建线程//如果使用_beginthreadex 线程函数是staticthread th(threadFun,this);th.detach();}//执行detach之后线程如何退出//设置标志位void threadFun(){while(!m_isQuit){_sleep(100);qDebug()do some work;}} private:bool m_isQuit false; };int main(int argc, char *argv[]) {QApplication a(argc, argv);{thread th(add,3,4);//线程函数可以以参数形式传入//join函数 阻塞当前线程 直到线程函数退出 // _sleep(100); // qDebug()before join; // th.join(); // qDebug()thread join;//detach 将线程对象与线程函数分离线程不依赖线程对象管理qDebug()before detach;th.detach();qDebug()after detach;//注join和detach两者必选其一否则线程对象的回收会影响线程的回收导致程序崩溃}Dialog w;w.show();return a.exec(); }看下面一段代码 执行结果不等于300为什么 g_value时分为三步读自增写。在多线程情况下可能存在多个线程读或写同一个值的情况这就使得结果小于我们预期的值了。 线程并发引发的数据问题 并发同一时间间隔内程序交替执行 解决线程同步 线程同步同一时间只允许一个线程访问资源 实现线程同步方法 互斥锁读写锁条件变量原子操作信号和槽事件循环 1、互斥锁 lock_guard 与 unique_lock 管理互斥锁让互斥锁使用更方便、更安全可以避免死锁比如我们使用完锁忘记释放了 lock_guard 与 unique_lock 遵循RAII RAII资源获取即初始化是C很重要的思想。 思考如果需要在中途释放锁怎么办 使用 unique_lock使用 lock_guard 花括号实现即锁一部分 锁锁定代码长度称为粒度锁定的代码长度越长锁的粒度越大影响并发的效率。 2、条件变量 #includecondition_variable std::condition_variable con_var; con_var.notify_one();通知一个 con_var.notify_all();通知所有 con_var.wait(); wait() 函数 有两个参数第一个参数是一个已经上锁的互斥锁unique_lock第二个参数是一个可调用对象其中包含函数指针仿函数bind lambda表达式如果这个函数执行返回值是false 就会通知无效可以避免误通知作用阻塞当前线程直到收到通知 notify_one notify_all当调用wait时释放互斥锁阻塞当前线程将线程放入条件变量等待的容器中当收到通知时获取互斥锁执行后续代码wait()和通知的关系在使用的时候一定是wait之后才能收到通知否则会失效 运行结果 先打印出三个before wait之后每点击一下按钮打印一个after wait 举例 现在我们改变一下 运行结果 我们第一次按下按钮quit取非为真此时打印after wait再次按下此时quit取非为假此时无反应第三次按下此时quit又为真打印after wait...... 3、原子操作 #includeatomic atomicint cnt(0); cnt; cnt--;cnt.load(); #include dialog.h#includeiostream using namespace std;#include QDebug #includethread #include QApplication#includeatomic atomicint cnt(0);void AutomicFunc() {for(int i0;i100;i){_sleep(10);//cnt; //加锁的方式进行是原子操作线程安全cnt cnt 1; //非原子操作线程不安全_sleep(10);} }int main(int argc, char *argv[]) {QApplication a(argc, argv);{thread th[3];for(int i0;i3;i){th[i] thread(AutomicFunc);}for(int i0;i3;i){th[i].join();}}qDebug()count cnt.load();//取值Dialog w;w.show();return a.exec(); }如有问题欢迎交流指正
http://www.w-s-a.com/news/285998/

相关文章:

  • h5网站开发用什么软件制作公司网站建设代理怎么做
  • 网站建设资料准备网上购物app有哪些
  • 沧州做网站优化哪家公司便宜国内百度云网站建设
  • 网站的最近浏览 怎么做龙岩市人才网最新招聘信息
  • 网站建设需要找工信部吗网站开发账务处理
  • 做那种的视频网站个体工商网站备案
  • 推广网官方推广网站中国建设招聘信息网站
  • 医院网站建设需要多少钱网络营销渠道可分为哪几种
  • 怎么取网页视频网站元素计算机专业论文网站开发
  • 上海网站建设备案号怎么恢复wordpress打开页面空白
  • 30个做设计的网站企业设计网站
  • 招生网站开发的背景创意 wordpress
  • 网站备案资料查询小型企业管理系统软件
  • 温州网站建设维护怎么做好网站开发、设计
  • 佛山 做网站公司有哪些网站排名忽然不见了
  • 广告网站建设最专业东莞大朗网站设计
  • 网站做流量的论坛贴吧分销商城系统源码
  • 新手建立网站的步骤网站建设费怎么入分录
  • 哪里建网站性价比高做网站赚取广告费
  • 邢台集团网站建设价格微信怎么做捐钱的网站
  • 做网站费用需要分摊吗装修公司一般多少钱一平方
  • 公司主页的网站格式wordpress自动推送给百度
  • 网站建设辶金手指排名十二wordpress 当数据库
  • 无锡手机网站建设服务苏州展厅设计企业
  • 无锡网站制作需要多少钱北京二次感染最新消息
  • 网站开发视频播放无画面杭州房产信息网官网
  • 网站开发 改进如何创建公众号平台
  • wordpress网站响应很慢只有asp网站代码可以重新编译吗
  • 哪个网站教做饭做的好wordpress热点文章
  • 可以做推广东西的网站重庆网站建设 重庆网站制作