1.web應用中,要對某一個任務用多線程實現,最簡單的代碼格式是不是必須把要執行的代碼放在run方法中?
WEB服務器會幫你把每個訪問請求開辟一個線程,你只要按照你所開發的框架,比如tomcat會讓你利用servlet這個框架來寫代碼。具體真的一言難盡,反正不用寫到RUN中,除非你想對線程控制到極致,例如你要做測試。
2.部署在服務器上的一個網站,多個瀏覽器在訪問同一個功能點時,存在多線程之說嗎?
多個瀏覽器的意思如果是(無論多台電腦上還是同一台電腦上的)多個頁面打開同一網站的某個功能頁面,那么如第一個問題所說,每一次訪問(即打開頁面)都是一個請求,服務器會為每個請求開辟一個線程,就是多線程。
3.多線程和並發之間是怎么一種關系?
多線程執行效率就是評判並發效果的好壞,高並發的概念就是在保證數據准確的情況下,減少進程所需操作的時間,特別經典的是頁面訪問服務器后,讓服務器去修改數據庫,如果你的數據庫優化做的到位,那么查找數據並返回給客戶端的時間將大大減少,我們知道對於一個熱門網站的查詢量是非常大的,然后一個服務器內存可以接收的進程數量也是有限的,這樣一來,我們就說某一時間段內處理線程(訪問請求)越多,那么並發效率就越好了。