對於進程而言,數據之間都是相互隔離的,而多線程則不同,不同的線程除了堆棧空間之外所有的數據都是共享的。和進程相比,多線程是一種多任務,多並發得工作方式。它的優點有:1,提高應用程序響應。2,使cup系統工作更加有效。3,改善程序結構。
Linux系統下的多線程遵循POSIX線程接口,稱為pthread。編寫Linux下的多線程程序,需要使用頭文件pthread.h。
下面看一個簡單的多線程的例子:
我是在虛擬機中的linux中編輯的,沒法拷貝,所以就上圖吧。
首先在命令行下 vi thread.c
上面啟動了兩個線程分別和主線程打印一句話。
然後在命令行中輸入gcc thread.c -o thread -lpthread
經過編譯後輸入 ./thread
主線程和另兩個子線程交替打印。如果想退出Ctrl+C