多程序程式設計

2022-09-02 20:06:07 字數 1122 閱讀 7652

一。多程序程式設計

1.函式學習

(1).建立程序

1.函式名        fork

函式原型    pid_t fork(void)

函式功能    建立乙個子程序

所屬標頭檔案   

返回值     成功時:在父程序中返回子程序的pid

在子程序中返回是0

失敗時:子程序返回的-1

引數說明    無引數

2.      

函式名        vfork

函式原型    pid_t vfork(void)

函式功能    建立乙個子程序並阻塞父程序

所屬標頭檔案   

返回值     成功時:在父程序中返回子程序的pid

在子程序中返回是0

失敗時:子程序返回的-1

引數說明    無引數

3.#include

#include

void main(void)

思考得出什麼結果?

4.fork 對比 vfork

(1) fork: 子程序用於獨立的資料段,堆疊。

vfork:子程序與父程序共享資料段,堆疊。

(2) fork:父、子程序的執行次序不確定

vfork:子程序先執行、父程序後執行

(2).程序退出

exit(0);

(3).程序等待     

函式名        wait

函式原型    pid_t wait(int *status)

函式功能    掛起呼叫它的程序,直到其子程序結束

所屬標頭檔案   

返回值     成功時:返回終止的那個子程序的id

失敗時:-1

引數說明    status:記錄子程序的退出狀態

(4).執行程式       

函式名        execl

函式原型    int execl(const char*)

函式功能    執行可執行檔案

所屬標頭檔案   

返回值     成功時:不返回

失敗時:才返回

引數說明    pathname:要執行的可執行檔案的路徑

arg:可執行檔案執行需要的

多程序程式設計

linux下乙個程序在記憶體裡有三部份的資料,就是 資料段 堆疊段 和 段 其實學過組合語言的人一定知道,一般的cpu象i386,都有上述三種段暫存器,以方便作業系統的執行。段 顧名思義,就是存放了程式 的資料,假如機器中有數個程序執行相同的乙個程式,那麼它們就可以使用同一 個 段。堆疊段存放的就是...

多程序程式設計

1.程序是正在執行的程式的例項 每個程序都至少包含乙個執行緒 2.電腦程式是由指令組成的 程序是這些指令的實際執行體 3.程序的狀態 被建立 就緒 執行 阻塞 掛起 終止等狀態 用subprocess模組來管理程序 import subprocess 1.呼叫subprocess.call 建立程序...

python多程序 Python多程序程式設計詳解

本文 在 python 3.6 環境下測試通過。多程序 multiprocessing 模組是在 python 2.6 版本中加入的,和多執行緒 threading 模組類似,都是用來做並行運算的。不過python既然有了threading,為什麼還要搞乙個multiprocessing呢?這是因為...