[問題] 幾個有關socket的問題

看板C_and_CPP作者 (不要問?因為愛!)時間13年前 (2011/01/30 22:28), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串1/3 (看更多)
在socket上使用的程式語言為C,想請問下面幾個問題 1. listen的函式 後面的數字是代表允許幾個client連線還是其他意思?? 2. 在client連續send message(假設連續三次好了) 可是server都沒去read 等client write完後 server才開始read, 那我在read函式的長度部分 設定一個很大的值 是連續讀三次才會讀完 還是 一次就把三次的訊息讀完了? 因為讀到的訊息感覺有點怪怪的Orz|| 3.如何知道client端斷線了,查過網路似乎都建議自己寫一個timeout機制 去判斷多久沒read到東西就斷線,有其他的API可以知道嗎? 目前就以上三個問題 懇請解惑 感謝<(_ _)> -- ╬═══════════════════════════════ ◢██ ◢█ ◢██ ◢██ ◢██ ◢██ ◢██ ◢██ ◢██ █▆▆ ▆▆ █▆█ ▊▊█ █▍█ ▆▆█ █▊█ █▊█ ▆▆█ ▆▆█ ██ ▆▆█ ▊▊█ █▊█ █▆▆ ███ ███ ▆▆█ ═══════════════════════════════╬apang -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.239.208

01/30 23:53, , 1F
raknet 不錯喔..好像都有注意到這些問題 :)
01/30 23:53, 1F

01/31 10:52, , 2F
2應該是一次讀
01/31 10:52, 2F

01/31 18:01, , 3F
client斷線時會傳一個EOF過來 可以判斷read回傳值來檢查
01/31 18:01, 3F

01/31 22:43, , 4F
但如果socket不是正常結束就不會...例如拔網路線
01/31 22:43, 4F
文章代碼(AID): #1DHNMHgB (C_and_CPP)
文章代碼(AID): #1DHNMHgB (C_and_CPP)