博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
多线程编程
阅读量:5312 次
发布时间:2019-06-14

本文共 1349 字,大约阅读时间需要 4 分钟。

编写的多线程程序,是根据孙鑫的视频讲解写的,这个代码重点在于线程同步,需要注意的是线程的时间片的划分,如果主线程的时间片一直在运行的话,程序是不会进入子线程的。

// MultiThread.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include
#include
using namespace std;DWORD WINAPI Thread1(LPVOID lpParamenter);DWORD WINAPI Thread2(LPVOID lpParamenter);int ticket = 100;HANDLE hMutex;int main(int argc, _TCHAR* argv[]){ HANDLE hThread1, hThread2; hThread1 = CreateThread(NULL, 0, Thread1, NULL, 0, NULL); hThread2 = CreateThread(NULL, 0, Thread2, NULL, 0, NULL); CloseHandle(hThread1); CloseHandle(hThread2); hMutex=CreateMutex(NULL,false,NULL); Sleep(1000); return 0;}DWORD WINAPI Thread1(LPVOID lpParamenter){ while (true) { WaitForSingleObject(hMutex, INFINITE); if (ticket > 0) { Sleep(1); cout << "Thread1 sell ticket:" << ticket-- << endl; } else { break; } ReleaseMutex(hMutex); } return 0;}DWORD WINAPI Thread2(LPVOID lpParamenter){ while (true) { WaitForSingleObject(hMutex, INFINITE); if (ticket > 0) { Sleep(1); cout << "Thread2 sell ticket:" << ticket-- << endl; } else { break; } ReleaseMutex(hMutex); } return 0;}

 

转载于:https://www.cnblogs.com/qiaozhoulin/p/4562241.html

你可能感兴趣的文章
模板大集合
查看>>
《学习之道》第二章学习方法1思维钩子△
查看>>
Alpha 冲刺 (1/10)
查看>>
PHP : Reflection API
查看>>
php : 匿名函数(闭包) [二]
查看>>
check hosts file
查看>>
开放系统互联参考模型
查看>>
JAVA语言的三种技术架构
查看>>
python爬虫--解析网页几种方法之正则表达式
查看>>
2.共享内存
查看>>
简单了解Django应用app及分布式路由
查看>>
CSS3 中的动画功能
查看>>
docker制作共享jdk的tomcat镜像
查看>>
python_Note_Preview_01
查看>>
周一04.3流程控制while循环
查看>>
Vue实现一个学生信息录入系统,实现录入和删除
查看>>
Oracle EBS中查询Profile的各种SQL【转载】
查看>>
C#使用FileSystemWatcher来监控指定文件夹,并使用TCP/IP协议通过Socket发送到另外指定文件夹...
查看>>
MySQL常用API函数
查看>>
python通过LXML库读取xml命名空间
查看>>