資源簡介
這是利用信號量互斥來實現讀者寫者問題,并寫者優先(Linux下編譯直接通過,windows下注釋將顯示亂碼)!
代碼片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define?ji?60
#define?jijianglin?90
#define?n?6?//定應測試的序列數。
//注釋有些是在linux里進行的,所以有些是亂碼。
int?shmidrcount;
int*?p1;
int*p2;
char?*shmwcount;??
char?*shmrcount;
int?semid;??
//?實例化semun,等下用來傳遞給semonp的參數,
union?semun{int?val;struct?semid_ds*?buf;ushort*?array;};
struct?ps
{char?who;//測試的結構,R代表讀者,W代表寫者。
char?name;//寫者或讀者的名字。
?};
struct?ps?queue[n];
//創建測試序列。
void?createseq()
{
????queue[0].who=‘R‘;queue[0].name=‘A‘;
????queue[1].who=‘R‘;queue[1].name=‘B‘;
????queue[2].who=‘R‘;queue[2].name=‘C‘;
????queue[3].who=‘R‘;queue[3].name=‘D‘;
????queue[4].who=‘W‘;queue[4].name=‘E‘;
????queue[5].who=‘W‘;queue[
- 上一篇:HX711庫文件
- 下一篇:Odoo8 model
評論
共有 條評論