Как я могу отправить уведомление с сервера всем клиентам в WCF (вещание можно сказать)?
Я хочу отправлять уведомления каждую секунду от службы net tcp WCF всем клиентам, Трансляцию можно сказать?
После полезных ответов
Я написал следующий метод, который будет отправлять уведомления (сердцебиение) всем подключенным пользователям
<code>foreach (IHeartBeatCallback callback in subscribers) { ThreadPool.QueueUserWorkItem(delegate(object state) { ICommunicationObject communicationCallback = (ICommunicationObject)callback; if (communicationCallback.State == CommunicationState.Opened) { try { callback.OnSendHeartBeat(_heartbeatInfo.message, _heartbeatInfo.marketstart,_heartbeatInfo.marketend, _heartbeatInfo.isrunning, DateTime.Now); } catch (CommunicationObjectAbortedException) { Logger.Log(LogType.Info, "BroadCast", "User aborted"); communicationCallback.Abort(); } catch (TimeoutException) { Logger.Log(LogType.Info, "BroadCast", "User timeout"); communicationCallback.Abort(); } catch (Exception ex) { Logger.Log(LogType.Error, "BroadCast", "Exception " + ex.Message + "\n" + ex.StackTrace); communicationCallback.Abort(); } } else { DeletionList.Add(callback); } } ); } </code>
Я беспокоюсь о вызове метода обратного вызова, так как клиент может закрыть свое приложение, но я обработал его с помощью try catch, уменьшил время ожидания и отправил широковещательную передачу параллельно, так что этого достаточно?