多執行緒和多程序還是有很多區別的。其中之一就是,多程序是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核心本身所支援的,而多執行緒則需要相應的動態庫進行支援。對於程序而言,資料之間都是相互隔離的,而多執行緒則不同,不同的執行緒除了堆疊空間之外所有的資料都是共享的。說了這麼多,我們還是...