亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

golang的net.Conn.Read如何停止讀???

我正在嘗試編寫一個基于套接字的簡單go服務器。我只是想知道如何連接。下面的內容知道什么時候停止閱讀。(注意:這不是我的代碼,例如,我從Go中的Unix套接字復制了它)package mainimport (  "log"  "net")func echoServer(c net.Conn) {  for {    buf := make([]byte, 512)    nr, err := c.Read(buf)    if err != nil {        return    }    data := buf[0:nr]    println("Server got:", string(data))    _, err = c.Write(data)    if err != nil {        log.Fatal("Write: ", err)    }  }}func main() {  l, err := net.Listen("unix", "/tmp/echo.sock")  if err != nil {    log.Fatal("listen error:", err)  }  for {    fd, err := l.Accept()    if err != nil {        log.Fatal("accept error:", err)    }    go echoServer(fd)  } }是EOF角色還是其他?如果有人可以指向我指向官方go docs鏈接,這將非常有幫助。謝謝。
查看完整描述

2 回答

?
慕的地6264312

TA貢獻1817條經驗 獲得超6個贊

當其基礎實現遇到任何錯誤時,它將停止讀取。錯誤可能是實際的I / O錯誤,或者可能是操作系統信號連接被io.EOF關閉,或者可能是超時,依此類推。


查看完整回答
反對 回復 2021-04-19
  • 2 回答
  • 0 關注
  • 776 瀏覽
慕課專欄
更多

添加回答

了解更多

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號