linux下的C語言開發(多執行緒程式設計)

2021-07-05 21:25:50 字數 1057 閱讀 4203

多執行緒和多程序還是有很多區別的。其中之一就是,多程序是linux核心本身所支援的,而多執行緒則需要相應的動態庫進行支援。對於程序而言,資料之間都是相互隔離的,而多執行緒則不同,不同的執行緒除了堆疊空間之外所有的資料都是共享的。說了這麼多,我們還是自己編寫乙個多執行緒程式看看結果究竟是怎麼樣的。

[cpp]view plain

copy

#include 

#include 

#include 

#include 

void

func_1(

void

* args)  

}  void

func_2(

void

* args)  

}  intmain()  

if(pthread_create(&pid2, null, func_2, null))  

while

(1)  

return

0;  

}  

和我們以前編寫的程式有所不同,多執行緒**需要這樣編譯,輸入gcc thread.c -o thread -lpthread,編譯之後你就可以看到thread可執行檔案,輸入./thread即可。

[cpp]view plain

copy

[test@localhost desktop]$ ./

thread

this

is func_1!  

this

is func_2!  

this

is func_1!  

this

is func_1!  

this

is func_2!  

this

is func_1!  

this

is func_1!  

this

is func_2!  

this

is func_1!  

this

is func_1!  

linux下的C語言開發(多執行緒程式設計)

多執行緒和多程序還是有很多區別的。其中之一就是,多程序是linux核心本身所支援的,而多執行緒則需要相應的動態庫進行支援。對於程序而言,資料之間都是相互隔離的,而多執行緒則不同,不同的執行緒除了堆疊空間之外所有的資料都是共享的。說了這麼多,我們還是自己編寫乙個多執行緒程式看看結果究竟是怎麼樣的。cp...

Linux下的C語言開發 多執行緒程式設計

多執行緒和多程序還是有很多區別的。其中之一就是,多程序是linux核心本身所支援的,而多執行緒則需要相應的動態庫進行支援。對於程序而言,資料之間都是相互隔離的,而多執行緒則不同,不同的執行緒除了堆疊空間之外所有的資料都是共享的。說了這麼多,我們還是自己編寫乙個多執行緒程式看看結果究竟是怎麼樣的。in...

linux下的C語言開發(多執行緒程式設計)

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!多執行緒和多程序還是有很多區別的。其中之一就是,多程序是linux核心本身所支援的,而多執行緒則需要相應的動態庫進行支援。對於程序而言,資料之間都是相互隔離的,而多執行緒則不同,不同的執行緒除了堆疊空間之外所有的資料都是共享的。說了這麼多,我們還是...