當前位置:編程學習大全網 - 編程語言 - 單線通信編程

單線通信編程

這是典型的對多線程的無知造成的,問題本身就有問題。

多線程只是壹種技術——所以沒有必要,或者只有。

多線程有自己的適用範圍,我們只能說在哪種情況下適合使用多線程,但在這種情況下,絕對不是只靠多線程就能解決的。所以問題是多線程的典型應用場景,而不是問絕對,只能是!如果妳不相信改變壹個結構,比如壹個數組處理器,人們編程的時候用數組,這和線程的概念沒有關系!

典型的使用場景是壹:充分利用io資源。

比如當壹個接口不斷接收輸入信息時(如鍵盤、鼠標、網卡等。)而且接口或者程序處理信息的時間比較長,最好使用多線程。多線程的意義在於CPU在參與接口處理的同時可以處理輸入事件。如果是單線程的話,必須等接口或者程序處理完了才能處理輸入事件,而多線程是為了防止這個接口或者程序裝死(單線程處理接口的時候不接受事件)。

再者,如果程序在運行過程中需要長時間讀寫硬盤,那麽多線程也可以很好的解決這個問題。

其實它的目的是發現CPU工作時單線程(進程)可能會造成其他IO資源(如磁盤IO)閑置,而使用多線程是為了合理利用IO資源,加快整個軟件的運行速度。

其實windows系統是壹個多任務多進程的工作,每個進程都使用CPU時間輪的方法。而線程通過使用多個資源來同步。

所以多線程本身只是提高了IO的利用率,和它長時間處理什麽關系不大。例如,windows服務不是線程,但是每個windows服務都是壹個進程。為什麽它們可以同時在系統中並發?這個原因就是CPU輪子。多線程基於進程占用的cpu時間片內IO資源的充分利用。

還有壹個技術也是線程擴展,就是我們常說的CPU四核八線。其實只是把每個物理核虛擬成壹個線程CPU,但這種所謂的四核八線CPU只是提高了CPU的利用率。

笑壹樓二樓,新聞機制是什麽——這跟體制和毛有什麽關系?都是大神!

事實上,在單核單線CPU上,多線程除了增加線程打開和回收的成本,並沒有利用CPU的任何優勢。並且多個進程之間已經有壹個CPU輪方法來協調各個進程。

  • 上一篇:Egg語言程序設計
  • 下一篇:國考面試熱點:直播答題靠燒錢能火多久
  • copyright 2024編程學習大全網