程序與執行緒

2021-08-14 07:11:51 字數 989 閱讀 4439

程序和執行緒

當乙個程式開始執行時,它就是乙個程序,程序包括執行中的程式和程式所使用到的記憶體和系統資源。而乙個程序又是由多個執行緒所組成的。

process pro = process.getprocesses();

//通過程序開啟一些應用程式

process.start(「calc」);

process.start(「iexplore」,」

//通過乙個程序開啟乙個指定的檔案

processstartinfo pi = new processstartinfo(@」c:\users\admin\desktop\奇酷學院u3d1607_1期開班典禮.ppt」);

process p = new process();

p.startinfo = pi;

p.start();

關機process.start(「shutdown」, 「-s -t 0」);

登出process.start(「shutdown」, 「-l 「);

重啟 process.start(「shutdown」, 「-r -t 0」);

什麼是執行緒?

執行緒是程式中的乙個執行流,每個執行緒都有自己的專有暫存器(棧指標、程式計數器等),但**區是共享的,即不同的執行緒可以執行同樣的函式。

什麼是多執行緒?

多執行緒是指程式中包含多個執行流,即在乙個程式中可以同時執行多個不同的執行緒來執行不同的任務,也就是說允許單個程式建立多個並行執行的執行緒來完成各自的任務。

多執行緒的好處:

可以提高 cpu 的利用率。在多執行緒程式中,乙個執行緒必須等待的時候, cpu 可以執行其它的執行緒而不是等待,這樣就大大提高了程式的效率。

多執行緒的不利方面:

執行緒也是程式,所以執行緒需要占用記憶體,執行緒越多占用記憶體也越多; 多執行緒需要協調和管理,所以需要 cpu 時間跟蹤執行緒; 執行緒之間對共享資源的訪問會相互影響,必須解決競用共享資源的問題;執行緒太多會導致控制太複雜,最終可能造成很多bug;

程序與執行緒

程序 process 管理單元,管理分配應用程式的資料,的記憶體空間.執行緒 thread 執行單元,執行緒負責執行乙個預先編排好的 段,執行 棧是基於執行緒的.乙個應用程式啟動的時候,程序自動建立,並且會預設建立主線程,主線程負責執行main 方法.thread t new thread new ...

程序與執行緒

程序 是擁有資源的實體,包括 1。乙個程序有乙個虛擬位址空間,不同程序位於不同的 虛擬位址空間中。程序之間若要通訊,必須通過作業系統 的功能呼叫 ipc 2。程序擁有其他資源,例如開啟的檔案和i o裝置。程序結束時,作業系統會自動釋放該程序擁有的所有資源。例如,如果 open乙個檔案而不close它...

程序與執行緒

程序包括 1 私有的虛位址空間 2 可執行程式 與資料 3 開啟系統資源列表控制代碼 4 安全訪問標誌 5 程序id 6 至少有乙個執行執行緒 執行緒包括 1 一組cpu暫存器狀態 2 兩個堆疊 系統態與使用者態 3 tls 執行緒區域性儲存區 4 執行緒id 5 安全特性 因此程序是不活潑的,它從...