為什麼會產生執行緒 以及多執行緒的壞處

2021-09-26 08:06:34 字數 431 閱讀 4599

為什麼會產生執行緒,執行緒的產生主要是解決什麼問題?

(1)使用多執行緒可以減少程式的響應時間。

(2)與程序相比,執行緒的建立和切換開銷更小。建立許多資料結構來維護執行緒**段、資料段等資訊,而執行於同乙個程序內的執行緒共享同乙個**段、資料段,執行緒的啟動或切換的開銷就比程序要少到很多。

(3)多cpu和多核心計算機本身就具有執行多執行緒的能力,如果使用單個執行緒,將無法複製利用計算機資源,造成資源的巨大浪費。

(4)使用多執行緒能簡化程式的結構,使程式便於理解和維護。

多執行緒的壞處:

多執行緒的併發執行,引入多執行緒之後,系統的執行路徑變成了多條,並且這條執行路徑在併發執行。那麼首先程式的執行具有不確定性,每次執行的結果可能都會不同,因為程式的交替執行的順序和時機不同了。其次,使得某些資源的訪問出現的競爭,問題變得困難,需要資源進行同步,這會使得程式的可靠性和穩定性降低。

為什麼要用多執行緒

以前我認為多執行緒的作用就是提公升效能。實際上,多執行緒並不一定能提公升效能 甚至還會降低效能 多執行緒也不只是為了提公升效能。多執行緒主要有以下的應用場景 1 避免阻塞 非同步呼叫 單個執行緒中的程式,是順序執行的。如果前面的操作發生了阻塞,那麼就會影響到後面的操作。這時候可以採用多執行緒,我感覺...

為什麼要用多執行緒

1 避免阻塞 非同步呼叫 2 避免cpu空轉 需要處理的資訊提供得太慢,導致 cpu 效能沒有充分利用,這個時候多程序能充分利用 cpu 在io程式設計一節中,我們已經知道,cpu的速度遠遠快於磁碟 網路等io。在乙個執行緒中,cpu執行 的速度極快,然而,一旦遇到io操作,如讀寫檔案 傳送網路資料...

為什麼使用多執行緒

1 耗時的操作使用執行緒,提高應用程式響應 2 並行操作時使用執行緒,如c s架構的伺服器端併發執行緒響應使用者的請求。3 多cpu系統中,使用執行緒提高cpu利用率 4 改善程式結構。乙個既長又複雜的程序可以考慮分為多個執行緒,成為幾個獨立或半獨 立的執行部分,這樣的程式會利於理解和修改。使用多執...