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

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

Golang io.Reader 與 net.Pipe 的使用

Golang io.Reader 與 net.Pipe 的使用

Go
楊__羊羊 2022-03-07 22:45:58
我要解決的問(wèn)題是在網(wǎng)絡(luò)應(yīng)用程序中使用 io.Reader 和 io.Writer,而不使用 bufio 和字符串,正如我在網(wǎng)上找到的示例一樣。為了提高效率,我試圖避免那些暗示的記憶副本。我在游戲區(qū)( https://play.golang.org/p/-7YDs1uEc5)上使用 net.Pipe 創(chuàng)建了一個(gè)測(cè)試應(yīng)用程序。有一個(gè)數(shù)據(jù)源和接收器通過(guò)網(wǎng)絡(luò)進(jìn)行通信。管道對(duì)連接(用于模擬網(wǎng)絡(luò)連接)和遠(yuǎn)端的環(huán)回以將數(shù)據(jù)反映給我們。程序可以到達(dá)讀取發(fā)送數(shù)據(jù)的環(huán)回代理,但據(jù)我所知,寫(xiě)回連接鎖;它肯定永遠(yuǎn)不會(huì)完成。此外,接收器中的接收器從不接收任何數(shù)據(jù)。我無(wú)法弄清楚為什么寫(xiě)入無(wú)法繼續(xù),因?yàn)樗c有效的路徑完全對(duì)稱(chēng)。我已經(jīng)編寫(xiě)了其他使用雙向網(wǎng)絡(luò)連接的測(cè)試系統(tǒng),但是一旦我停止使用 bufio 和 ReadString,我就會(huì)遇到這個(gè)問(wèn)題。我查看了這些代碼,但看不到我錯(cuò)過(guò)了什么。提前感謝您的幫助。
查看完整描述

1 回答

?
30秒到達(dá)戰(zhàn)場(chǎng)

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

問(wèn)題在第 68 行:

data_received := make([]byte, 0, count)

此行創(chuàng)建一個(gè)長(zhǎng)度為 0 和容量的切片count。調(diào)用Read不讀取數(shù)據(jù),因?yàn)殚L(zhǎng)度為 0。調(diào)用Write阻塞,因?yàn)閺牟蛔x取數(shù)據(jù)。

通過(guò)將行更改為:

data_received := make([]byte, count)

游樂(lè)場(chǎng)示例

請(qǐng)注意,可能不會(huì)打印“Finished Writing”,因?yàn)槌绦蚩梢栽?code>dataSrc完成執(zhí)行之前退出。


查看完整回答
反對(duì) 回復(fù) 2022-03-07
  • 1 回答
  • 0 關(guān)注
  • 264 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(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)