Linux系統下C 多執行緒程式設計

2021-08-14 19:21:26 字數 1329 閱讀 3811

2017-0924 c++編譯執行

2017-0924 記錄執行時間

1、c++編譯執行

linux下,c++可執行檔案: *.out

編譯:  c++:  g++ ex1.cpp -o ex1  (ex1.cpp 為原始檔,名字字尾名隨意,ex1為可執行性檔案,預設為.out檔案,字尾名省略)

c語言: gcc ex1.c -o ex1

執行: ./ex1

批處理: ./ex1&&./ex2&&...  (用&&連線各個命令)

2、clock()函式

clock_t clock(void) ;

簡單而言,就是該程式從啟動到函式呼叫占用cpu的時間。這個函式返回從「開啟這個程式程序」到「程式中呼叫clock()函式」時之間的cpu時鐘計時單元(clock tick)數,在msdn中稱之為掛鐘時間(wal-clock);若掛鐘時間不可取,則返回-1。其中clock_t是用來儲存時間的資料型別。

標頭檔案:#include

clock_t start=clock();

s=t/clocks_per_sec;       //化為秒

ms=t%clocks_per_sec*1000/clocks_per_sec;  //化為毫秒

3、時間戳

獲取當前時間 

c++版本類似,本文不做闡述.

#include

#include

#include

#include

#include

using namespace std;

int main()

4、建立多個程序 fork()

fork()介紹:

乙個程序,包括**、資料和分配給程序的資源。fork()函式通過系統呼叫建立乙個與原來程序幾乎完全相同的程序,也就是兩個程序可以做完全相同的事,但如果初始引數或者傳入的變數不同,兩個程序也可以做不同的事。

乙個程序呼叫fork()函式後,系統先給新的程序分配資源,例如儲存資料和**的空間。然後把原來的程序的所有值都複製到新的新程序中,只有少數值與原來的程序的值不同。相當於轉殖了乙個自己。

摘抄自:

//fork()各種介紹

//fork()建立多個子程序

#include

#include

#include

#include

int main(void)

else if(0 == childpid1)

else if(0 == childpid2)

else if(0 == childpid3)

else

exit(exit_success); }

Linux下C多執行緒程式設計初學

抄襲的第乙個linux下c多執行緒併發的程式,要用到pthread.h標頭檔案 這還不算完,記得編譯時要用 lpthread來鏈結libpthread.a 原理很簡單,利用sleep 1 隔一秒列印一次,兩個執行緒分別列印 hello 和 world n 雖然寫的睡一秒,但是這兩個列印並不是均勻的交...

linux下C語言多執行緒程式設計

include include include include define max 10pthread t thread 2 pthread mutex t mut int number 0 i void thread1 printf thread1 主函式在等我完成任務嗎?n pthread e...

多執行緒程式設計 c語言linux下

適用與linux系統 1.了解基本概念 程序 是計算機所執行的乙個任務的描述,是面向作業系統的最小單位,作業系統能執行很多程序 執行自己寫的乙份 程式,就是讓作業系統執行乙個自己程式的程序 作業系統會根據程式分配定量的資源 執行緒 面想程式 程序 的,把乙個程式分成多個執行緒可以實現並髮式,多工執行...