国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++線程同步實例分析

2020-01-26 15:15:08
字體:
來源:轉載
供稿:網友

本文實例分析了C++線程同步問題,分享給大家供大家參考。具體分析如下:

該實例設置全局變量g_bContinue,在主線程中設置全局變量g_bContinue,工作線程檢測該全局變量,實現主線程控制工作線程的目的。

打印出的g_cnt1與g_cnt2的數值不同,是因為線程調試時時間片的切換。

具體代碼如下:

// countError.cpp : 定義控制臺應用程序的入口點。 // #include "stdafx.h" #include <Windows.h>  DWORD g_cnt1; DWORD g_cnt2; BOOL g_bContinue = TRUE; DWORD WINAPI ThreadProc(__in LPVOID lpParameter) {   while(g_bContinue)   {     g_cnt1++;     g_cnt2++;   }   return 0; }  int _tmain(int argc, _TCHAR* argv[]) {   HANDLE hThread[2];   g_cnt1 = g_cnt2 = 0;    hThread[0] = ::CreateThread(NULL, 0, ThreadProc, NULL, 0, NULL);   hThread[1] = ::CreateThread(NULL, 0, ThreadProc, NULL, 0, NULL);    Sleep(1000);   g_bContinue = FALSE;   ::WaitForMultipleObjects(2, hThread, TRUE, INFINITE);   printf("g_cnt1=%d/n",g_cnt1);   printf("g_cnt2=%d/n",g_cnt2);   ::CloseHandle(hThread[0]);   ::CloseHandle(hThread[1]);   return 0; }

希望本文所述對大家的C++程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丰城市| 富裕县| 宝山区| 大洼县| 林州市| 徐汇区| 拜城县| 建湖县| 兖州市| 视频| 沁水县| 曲水县| 嘉义县| 盐城市| 韶关市| 隆子县| 吴川市| 于都县| 桂阳县| 常山县| 康乐县| 神农架林区| 永年县| 合山市| 苏尼特右旗| 莒南县| 镇沅| 固镇县| 仙桃市| 潞西市| 南开区| 黄山市| 大城县| 民和| 义马市| 鞍山市| 祁阳县| 广水市| 大新县| 肇庆市| 新余市|