Wie kann ich eine Benachrichtigungsnachricht vom Server an alle Clients in WCF senden (Broadcast kann man sagen)?

Ich möchte jede Sekunde eine Benachrichtigungsnachricht vom net tcp WCF-Dienst an alle Clients senden. Broadcast, können Sie sagen?

Nach den hilfreichen Antworten

Ich habe die folgende Methode geschrieben, mit der Benachrichtigungen (Heartbeat) an alle verbundenen Benutzer gesendet werden

<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>

Ich habe Bedenken, die Rückrufmethode aufzurufen, da der Client möglicherweise seine Anwendung schließt, aber ich habe sie mit dem try catch behandelt, das Timeout verringert und die Übertragung parallel gesendet. Ist das also ausreichend?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage