Re: [問題] 幾個有關socket的問題
※ 引述《sigma2003 (不要問?因為愛!)》之銘言:
: 在socket上使用的程式語言為C,想請問下面幾個問題
: 1. listen的函式 後面的數字是代表允許幾個client連線還是其他意思??
第2個參數backlog是指在等待連線的儲列(pending queue)的最大長度。
並不等於client的連線數。
: 2. 在client連續send message(假設連續三次好了) 可是server都沒去read
: 等client write完後 server才開始read,
: 那我在read函式的長度部分 設定一個很大的值
: 是連續讀三次才會讀完 還是 一次就把三次的訊息讀完了?
: 因為讀到的訊息感覺有點怪怪的Orz||
不論client寫多少次,都會累績在server的buffer中,所以讀一次就好
不過buffer滿了的話就會掉資料了。
: 3.如何知道client端斷線了,查過網路似乎都建議自己寫一個timeout機制
: 去判斷多久沒read到東西就斷線,有其他的API可以知道嗎?
: 目前就以上三個問題 懇請解惑 感謝<(_ _)>
tcp延伸協定中有keep alive這項,你可以去查查如何使用。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.123.87.251
※ 編輯: tabinoyume 來自: 122.123.87.251 (01/31 23:09)
討論串 (同標題文章)