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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Socket消息并發(fā)問(wèn)題

Socket消息并發(fā)問(wèn)題

慕蓋茨4494581 2018-11-07 08:05:14
啟用了一個(gè)監(jiān)聽(tīng)來(lái)等待數(shù)據(jù)(同步或異步隨意),當(dāng)遠(yuǎn)程有一消息到達(dá),我們將獲取此消息進(jìn)行處理,此時(shí)如果這是一個(gè)耗時(shí)很長(zhǎng)的過(guò)程,長(zhǎng)到遠(yuǎn)程又有多條消息到達(dá)則到達(dá)的消息會(huì)累積,而當(dāng)你處理完之前的消息后再次獲取消息則將一次性獲得所有累積的消息(分包重組),當(dāng)然這種重組是區(qū)分IP的,即不同地址過(guò)來(lái)的消息累積會(huì)分開(kāi)進(jìn)行重組為一條消息……此情況在同步或異步情況均會(huì)產(chǎn)生,而在同步情況產(chǎn)生的更明顯。對(duì)于這個(gè)問(wèn)題,我目前的解決方式是只能通過(guò)利用正則去分析消息拆解后進(jìn)行循環(huán)處理,因?yàn)橥ǔ?shí)際應(yīng)用中我們的消息都是有一定的格式規(guī)范的,比如消息頭有若干個(gè)1,消息尾有若干個(gè)2等。那么各位高手在實(shí)際開(kāi)發(fā)中有沒(méi)有遇到這種情況?又是如何去處理這種并發(fā)底層協(xié)議分包重組問(wèn)題的呢?
查看完整描述

2 回答

?
慕萊塢森

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果你用TCP,分包重組的過(guò)程在TCP協(xié)議中就完成了,不會(huì)存在你說(shuō)的那種情況。

如果你用UDP,是會(huì)有這種情況,你需要設(shè)計(jì)類(lèi)似停等或者滑窗協(xié)議來(lái)處理。

另外你說(shuō)的長(zhǎng)時(shí)間消息處理導(dǎo)致消息阻塞,建議將你將目前的接受和分包重組的線(xiàn)程和你的業(yè)務(wù)線(xiàn)程分開(kāi),接受進(jìn)程對(duì)包重組后緩存在本地消息隊(duì)列,然后設(shè)計(jì)一個(gè)發(fā)送線(xiàn)程從消息隊(duì)列中讀取這些消息再通過(guò)同步或者異步消息發(fā)送給業(yè)務(wù)線(xiàn)程。


查看完整回答
反對(duì) 回復(fù) 2018-11-12
?
回首憶惘然

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個(gè)贊

會(huì)阻塞嗎

查看完整回答
反對(duì) 回復(fù) 2018-11-12
  • 2 回答
  • 0 關(guān)注
  • 446 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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