第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

不通過多線程 似乎也能完成多客戶端請求

如果不用線程 直接在Server 類中加入while死循環(huán)同樣是達(dá)到多客戶端請求的效果?。?br />

正在回答

3 回答

提到多線程,往往還會想起另一個詞:并發(fā)。前者是手段,后者是目的。

并發(fā),顧名思義指同時發(fā)生,這里這個問題我所知只有多線程能解決。題主所提出的猜想咋一看似乎可行,實(shí)則不然。假如我們將講師的代碼改一改,將服務(wù)端給客戶端發(fā)的消息改成用戶在控制臺輸入,然后再發(fā)給客戶端,而客戶端也類似于此修改。修改之后按照題主的猜想,假設(shè)第一個客戶端連上服務(wù)端后,用戶不往控制臺輸入內(nèi)容,那么客戶端和服務(wù)端程序就會卡(阻塞)在相應(yīng)的這一行,直到用戶往里輸入內(nèi)容并以回車結(jié)束后才會繼續(xù)執(zhí)行程序。

這此期間,服務(wù)端一直停著,試問如何分身去響應(yīng)第二、第三……,甚至更多用戶的申請呢?

多線程的并發(fā),只要沒有公用同一資源,相互之間獨(dú)立運(yùn)行、互不影響。講個類比的故事。

沙僧要去流沙河做無本買賣,可一個人沒膽量去就來求大師兄,于是大師兄就拔了一根毛一吹,變成一個分身陪沙僧去了;八戒要去高老莊強(qiáng)媳婦兒,可一個人搶不贏就來求大師兄,于是大師兄就拔了一根毛一吹,變成另一個分身陪八戒去了;……

這個故事里的大師兄就好好比是服務(wù)端,它負(fù)責(zé)等待各路鬼神來求他辦事兒,并變出一個個相互獨(dú)立、互不影響的分身去幫各路妖精干各自的事情。吹毛變分身的是大師兄,就好比是循環(huán)等待并處理申請的線程啟動類;辦事兒的是分身,就好比一個個被線程啟動類啟動的線程。

p.s. 不知道這個一時隨想的類比例子是否貼切,容易理解?

4 回復(fù) 有任何疑惑可以回復(fù)我~

給樓上+1

0 回復(fù) 有任何疑惑可以回復(fù)我~

線程的好處在于同時進(jìn)行不延遲,

加個while:第一個客戶端響應(yīng)完,執(zhí)行完第二個才可以進(jìn)入,也就是同一時間只能響應(yīng)一個

利用線程 :可以同時執(zhí)行serversocket.start(),即同時響應(yīng)多個

2 回復(fù) 有任何疑惑可以回復(fù)我~
#1

花黑暗里開放

正解!
2016-05-12 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

不通過多線程 似乎也能完成多客戶端請求

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號