日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

专业课程设计之客户与服务器程序的同步与通信机制的设计(三)数据共享和线程

發布時間:2025/3/15 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 专业课程设计之客户与服务器程序的同步与通信机制的设计(三)数据共享和线程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

源碼下載地址為:

http://download.csdn.net/detail/qq78442761/9856423


---------------------------------------------------------------------------------------------------------------------------------------------------------

上一節為TCP通信,未讀的博友請先閱讀:

http://blog.csdn.net/qq78442761/article/details/72819306


---------------------------------------------------------------------------------------------------------------------------------------------------------


在編程中,實現數據共享一般用static靜態成員,和靜態函數進行操作,如下圖:


resource.h

#ifndef RESOURCE_H #define RESOURCE_H#include <QMutex>class Resource { public:Resource();static int getResourceNum();static void increaseResourceNum(int);static void reduceResourceNum(int);static void changeToSomeNumber(int);static int resourceNum; };#endif // RESOURCE_H 具體實現如下:

resource.cpp

#include "resource.h" QMutex mutexResource;int Resource::resourceNum=0;Resource::Resource() {}int Resource::getResourceNum() {return resourceNum; }void Resource::increaseResourceNum(int Num) {mutexResource.lock();resourceNum+=Num;mutexResource.unlock();return; }void Resource::reduceResourceNum(int Num) {mutexResource.lock();resourceNum-=Num;mutexResource.unlock();return; }void Resource::changeToSomeNumber(int Num) {mutexResource.lock();resourceNum=Num;mutexResource.unlock();return; }
此時為了數據的穩定,不被破壞,使用了互斥鎖機制,也就是對應上面的

mutexResource.lock()和mutexResource.unlock();


下面是線程的創建,在本程序中就是服務器每秒增加一個產品,這個功能,如下圖所示:


這個對應的代碼是

autoincrethread.h

#ifndef AUTOINCRETHREAD_H #define AUTOINCRETHREAD_H#include <QObject> #include <QThread> #include <QMutex> #include <windows.h> #include "resource.h"class AutoIncreThread : public QThread { public:AutoIncreThread(QObject *parent);// 創建與銷毀線程void Create();void Destroy();void run(); //線程入口函數};#endif // AUTOINCRETHREAD_H


autoincrethread.cpp

#include "autoincrethread.h" #include <QDebug>AutoIncreThread::AutoIncreThread(QObject *parent) {}void AutoIncreThread::Create() {this->start(); //運行線程 }void AutoIncreThread::Destroy() {this->terminate();wait(); }void AutoIncreThread::run() {while(1){Resource::increaseResourceNum(1);qDebug()<<"increaseResourceNum";Sleep(1000);} }

他的調用在服務器的widget.cpp里面,如下:

void Widget::AutoIncreBtn() {if(AutoInrestatus) //自增的情況(或想讓他停止自增){ui->ResourceAutoInpushButton->setText("開始自增");//銷毀線程m_resourceNumAutoIncre->Destroy();delete m_resourceNumAutoIncre;killTimer(m_timerId); // 關閉定時器AutoInrestatus=false;}else //想讓他自增{//用一工作線程實現m_resourceNumAutoIncre=new AutoIncreThread(NULL);m_resourceNumAutoIncre->Create();m_timerId = startTimer(500);ui->ResourceAutoInpushButton->setText("停止自增");AutoInrestatus=true;}}

源碼可exe文件可以通過本文最上面的鏈接進行下載。

下一節是用戶互斥量版本,鏈接如下:

http://blog.csdn.net/qq78442761/article/details/72887926

總結

以上是生活随笔為你收集整理的专业课程设计之客户与服务器程序的同步与通信机制的设计(三)数据共享和线程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久草精品在线 | 欧美aa大片| 毛片免费在线观看视频 | 五月婷婷社区 | 网站在线观看你懂的 | 夜夜操夜夜操 | 狠狠操综合网 | 五月激情五月婷婷 | 欧美一级特黄aaaaaa大片在线观看 | 亚洲综合在线观看视频 | 欧美在线三级 | 一本色道久久综合亚洲 | 永久免费视频网站直接看 | 国产亚洲精品自拍 | 邻家有女4完整版电影观看 欧美偷拍另类 | 美女扒开腿让人桶爽原神 | 亚洲激情a| 欧洲做受高潮免费看 | 日本黄色精品 | 我和我的太阳泰剧在线观看泰剧 | 亚洲成人高清在线 | 免费成人av在线 | 红杏出墙记 | 国产传媒中文字幕 | 成年人视频在线免费看 | 夜夜天天操 | www.久热| 爱福利视频广场 | 午夜精品福利影院 | 国产一区二区三区视频在线播放 | 脱美女衣服亲摸揉视频 | 香蕉久热 | 曰本无码人妻丰满熟妇啪啪 | 午夜免费激情视频 | 欧美三级午夜理伦三级老人 | 欧美h视频在线观看 | www.四虎在线观看 | 青青草在线视频免费观看 | 狼人久久| 久久久久久国产精品无码 | 成人欧美一区二区三区黑人动态图 | 台湾性生生活1 | 少妇一级淫片 | 五月天天 | 肥老熟妇伦子伦456视频 | 特级黄色一级片 | 99re在线视频观看 | 中文字幕精品久久久久人妻红杏1 | 免费黄色网址在线观看 | 国产精品欧美激情在线 | 免费在线 | 亚洲自拍偷拍图 | 国产在线黄色 | 亚洲女人毛片 | 宅男的天堂| 男生草女生视频 | 久久五月天av | 天天干一干 | 亚洲乱码电影 | 日本人做受免费视频 | 日韩在线激情 | a亚洲精品| 欧美又粗又长 | 99精品视频免费版的特色功能 | 日本激情在线 | 另类专区亚洲 | 黄色片久久久久 | 日本中文字幕在线看 | 成人午夜高清 | 中文字幕 视频一区 | 亚洲婷婷久久综合 | 亚洲第一综合 | 日本三级午夜理伦三级三 | 亚洲一区成人 | 日本精品久久久久中文字幕 | 五月天视频网站 | 久久成人精品 | 久久精品久久精品 | 亚洲婷婷在线观看 | 久久99久久99精品中文字幕 | 日韩精品视频中文字幕 | 国产亚洲天堂 | av白浆| 国产精品乱码一区二区视频 | 久久久久国产精品熟女影院 | 国产无限资源 | 日本免费一区二区三区四区五六区 | 国产在线成人精品午夜 | 亚洲20p| 婚后打屁股高h1v1调教 | 91小视频| 在线观看一区二区三区四区 | 久久久久成人精品无码 | 动漫美女被x | 日韩精品美女 | 一区二区国产电影 | 久久国产在线观看 | 日本少妇b | 五月激情丁香 |