操作系统兔子吃草
代码说明:
#include "stdafx.h" #include #include #include /*信号量的定义,它是负责协调各个线程, 以保证它们能够正确、合理的使用公共资源。 用于控制进程间的同步与互斥*/ typedef HANDLE Semaphore; Semaphore g_semBuffer,g_semGlass, g_mutex; //mutex 为互斥锁 // 利用 Windows 下的 API 函数(视窗操作系统应用程序接口)来定义 P、V 操作 #define P(S) WaitForSingleObject(S,INFINITE) #define V(S) ReleaseSemaphore(S,1,NULL) #define rate 1000 #define CONSUMER_NUM 4 // 消费者个数 #define PRODUCER_NUM 4 // 生产者个数 #define BUFFER_NUM 4 // 缓冲区个数 char *thing[4]={"glass1","glass2","glass3","glass4"}; //公共的队列缓冲区 struct Buffer { int product[BUFFER_NUM]; int front,rear; }g_buf; //兔子线程 DWORD WINAPI Rabbit(LPVOID para) { int i =*(int*)para; //第 i 只小白兔&
下载说明:请别用迅雷下载,失败请重下,重下不扣分!