互斥量使用例項

2021-06-30 17:00:26 字數 1636 閱讀 7781

4種排序公用乙個陣列~~~使用互斥量防止訪問衝突~~

[cpp]view plain

copy

#include 

#include 

#include 

using

namespace

std;  

const

intn=12;  

static

intarr[12]=;  

handle

hmutex;

//互斥量控制代碼

intdata[n];  

void

show(

intdata,

intn)  

;  void

quicksort(

int_data,

intlow,

inthigh)

//快速排序

data[i]=pivot;  

quicksort(data,low,i-1);  

quicksort(data,i+1,high);  

}  };  

void

maopaosort(

intdata)

//氣泡排序

}  j++;  

}  cout<<"maopao"

;  show(list,n);  

};  

void

sortchoice(

intdata)

//選擇排序

intt=list[min];  

list[min]=list[i];  

list[i]=t;  

}  cout<<"choice:"

;  show(list,n);  

};  

void

sortinsert(

intdata)

//插入排序

list[j]=t;  

}  cout<<"insert:"

;  show(list,n);  

};  

void

sortshell(

intdata)

//希爾排序

list[j-1]=t;  

}  }  

cout<<"shell:"

;  show(list,n);  

};  

//執行緒函式

dword

winapi fun1proc(

lpvoid

lpparameter)  

dword

winapi fun2proc(

lpvoid

lpparameter)  

dword

winapi fun3proc(

lpvoid

lpparameter)  

dword

winapi fun4proc(

lpvoid

lpparameter)  

intmain(

intargc,

char

*argv)    

互斥量的使用方法和臨界區(共享**段)類似,只是互斥量是在核心態實現的,臨界區在使用者態實現。

執行緒同步 使用互斥量

1.初始化與銷毀互斥量 linux使用pthread mutex t 資料型別表示互斥量,並使用pthread mutex init函式對互斥量進行初始化。include int pthread mutex init pthread mutex t restrict mutex,const pthr...

互斥量的使用《轉》

1 預備知識 臨界區非常適合同一程序中對資料的序列訪問,它的速度很快。然而,也許你想要使某些應用程式與機器中的其它事件或者其它程序取得同步,這時你就要使用一些核心物件來同步執行緒。核心物件包括 程序 執行緒 檔案 檔案變化通知 file change notification 控制台輸入 conso...

互斥量的使用《轉》

1 預備知識 臨界區非常適合同一程序中對資料的序列訪問,它的速度很快。然而,也許你想要使某些應用程式與機器中的其它事件或者其它程序取得同步,這時你就要使用一些核心物件來同步執行緒。核心物件包括 程序 執行緒 檔案 檔案變化通知 file change notification 控制台輸入 conso...