java的web開發需要用多線程嗎?
需要多線程的
最典型的應用比如tomcat,tomcat內部采用的就是多線程,上百個客戶端訪問同一個web應用,tomcat接入后都是把后續的處理扔給一個新的線程來處理,這個新的線程最后調用到我們的servlet程序,比如doGet或者doPost方法。如果不采用多線程機制,上百個人同時訪問一個web應用的時候,tomcat就得排隊串行處理了,那樣客戶端根本是無法忍受那種訪問速度的。還有就是需要異步處理的時候,需要使用多線程。比如task a和task b要并行處理,單個線程只能串行處理,先做完task a然后再做task b。如果想要多個task同時執行的話,就必須為每個task分配一個線程,然后通過java虛擬機的線程調度,來同時執行多個任務。比如你的CPU是多核心的話,就可以讓一個CPU執行一個線程。如果只有一個CPU的話,底層是按照分時復用的原則,各個線程按照時間片來獲得CPU資源。
不過多線程