多執行緒程式設計例項

2021-07-29 02:08:36 字數 1391 閱讀 8500



有四個執行緒1、

2、3、

4。執行緒

1的功能就是輸出

1,執行緒

2的功能就是輸出

2,以此類推

.........

現在有四個檔案

abcd

。初始都為空。現要讓四個檔案呈如下格式:a:

1 2 3 4 1 2.... b

:2 3 4 1 2 3.... c

:3 4 1 2 3 4.... d

:4 1 2 3 4 1....

程式:#include

#include

#include

#include

#include

#include

#include

int fd1,fd2,fd3,fd4;   //之後要寫的四個檔案的檔案描述符,定義為全域性變數可所有函式都用

void *func1(void*)          //執行緒1執行,在四個檔案中寫入符號}}

void *func2(void*)           //執行緒2執行,同上}}

void *func3(void*)           //執行緒3執行,同上}}

void *func4(void*)        //執行緒4執行,同上}}

int main()

fd2 = open("b.text",o_creat|o_rdwr,0644);

if (-1 == fd1)

fd3 = open("c.text",o_creat|o_rdwr,0644);

if (-1 == fd1)

fd4 = open("d.text",o_creat|o_rdwr,0644);

if (-1 == fd1)

ret = pthread_create(&id1,null,func1,null);

if (-1 == ret)

ret = pthread_create(&id2,null,func2,null);

if (-1 == ret)

ret = pthread_create(&id3,null,func3,null);

if (-1 == ret)

ret = pthread_create(&id4,null,func4,null);

if (-1 == ret)

pthread_join(id1,null);         //等待執行緒結束,必須有,否則程序結束,所以執行緒未結束也將結束

pthread_join(id2,null);

pthread_join(id3,null);

pthread_join(id4,null);

return 0;}

多執行緒程式設計例項

1 建立乙個執行緒用createthread函式 引數1 指向security attribute結構體的乙個指標,再次可以設定為null,預設的安全性 引數2 指定初始提交的棧的大小,以位元組為單位。可以設定為0,使用預設大小。引數3 指向乙個lspthread start routing型別的應...

多執行緒程式設計例項

include include include include include using namespace std intgetsum vector int iterator first,vector int iterator last static string getcurrenttime ...

C 多執行緒程式設計簡單例項

using system using system.collections using system.collections.generic using system.threading 在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程...