看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Linux gcc 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) NO 問題(Question): 要寫一支server如果收到rs232的資料,就透過ethernet傳給client~~ server收到rs232的資料,client一連上來,就會送給client(送收都印),但client按ctrl+c client中斷,server也會跟著中斷~~而server在一while迴圈裡 http://codepad.org/tRePDHcI server問題一直卡在while那邊,client就只是單純等待收資料~~ 請對socket有經驗的版友指點迷津~~~~3Q -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.198.76
janice001:我亂入一下 可以用多線程嗎? 06/27 11:42
CHHsu:第141行write必須檢查n 確認是否成功寫入 06/27 14:00
deh3215:之後會改成多client的方式~~有試過用write回傳值判斷,為0 06/27 20:49
deh3215:則重新accept,目前不懂client,按ctrl+c,server是中斷在哪? 06/27 20:50
CHHsu:http://linux.die.net/man/2/write 應檢查是否為-1 06/27 21:24
CHHsu:另外請仔細閱讀上面網頁的EPIPE段落 06/27 21:28
coolstreet:141的n要檢查,如果等於0表示client中斷 06/28 18:00
coolstreet:說錯= =,按照CHHsu說的即可 06/28 18:02