查看完整版本: 通訊程式 用戶端無預警斷線問題
頁: [1]

ggnnyy 發表於 2015-10-15 06:47 PM

通訊程式 用戶端無預警斷線問題

各位大大好:
我寫了一個以TCP方式製作的通訊程式,用戶端登入時主機端會記錄這個用戶連線,
用戶端關閉程式時會斷掉這個連線,也會發送一個訊號讓主機端也會刪除這個連線,
而主機端每隔一段時間會發送訊息給所有連線中用戶端,
但是如果用戶端關閉程式是使用強制關閉的方式,就沒辦法發送讓主機端也斷掉這個連線的訊號,
所以當此情況發生時主機端就會當掉....
想請問各位大大我改如何避免用戶端強制關閉,或強制關閉時主機端有什麼策略能避免這種狀況?...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div>

smallanan 發表於 2015-10-27 01:46 AM

你程式沒有用try catch包起來?

正常來說網路元件應該會有個time out的東西可以抓(就是等待時間拉)

他如果time out的話會自動跳例外,你再把那個connect殺了應該就好哩

另外建議一項,我不知道是我程式功力不足還是net架構的問題,如果要長時間開著程式的話,建議要有一個timer裡面每一天執行一次GC.Collect();

程式才不會吃記憶體吃到OS掛掉
頁: [1]