我正在关注这篇精彩的文章来剖析和理解使用 WCF 进行的聊天。逻辑是,当用户加入聊天时,会为该特定用户创建事件处理程序并将其存储在字典中。
lock (syncObj)
{
if (!checkIfPersonExists(person.Name) && person != null)
{
this.person = person;
chatters.Add(person, MyEventHandler);
userAdded = true;
}
}
因此,为服务中的多个用户存储了多个处理程序。
我的问题是这个——
仅在事件处理程序的帮助下发送消息时,服务如何识别目标用户?我不了解为用户存储的事件处理程序的唯一性。如何
handler.BeginInvoke(this, e, new AsyncCallback(EndAsync),
null);
调用客户端中为特定用户实现双工客户端合约接口的函数?是什么让他们联系在一起?会议?
注意:我知道如果不阅读那篇文章,这可能很难理解。我已尽力以通用的方式询问它。
问候
NLV