2013-05-17 38 views
3

我目前使用.Net 4.5 websocket包來支持windows 2012服務器上的websocket服務。使用WebSocketCollection對象在廣播消息期間處理錯誤

使用WebSocketCollection對象我可以成功地向所有客戶端廣播消息。

private static WebSocketCollection m_clients = new WebSocketCollection(); 
m_clients.Broadcast(「Hello all」)); 

這裏如何確保所有的客戶端都收到廣播的消息?如果某些客戶端無法接收消息,那麼我如何跟蹤這些錯誤消息?我需要使用什麼錯誤處理機制的國王?

有一個onError虛函數。但我不確定在廣播消息的失敗情況下它將如何工作。

public virtual void OnError(); 

回答

0

你能不能讓客戶「確認」收到的數據包,如果客戶端不應答數據包然後有機會就沒有正確接收。

如果您只是想保持連接正常,請在超時之前向客戶端發送「Ping」消息。同樣,如果沒有收到Ping,那麼您可以編寫客戶端在預定時間對服務器進行Ping操作,這可能表明存在問題?