我一直在为 .Net 程序员寻找简单的分步通信教程。经过一些 Google 查询,我在 net-informations.com 上找到了“CSharp Communications”代码集合。只要我到达“如何使用 C# 聊天服务器”示例,它看起来就相当不错。
作者提出了带有 HashTable 容器的多线程服务器,以将所有连接保持在服务器端的共享内存中。根据 MSDN 文档,用于广播消息的 TcpClient和NetworkStream类不是线程安全的,而示例从多个服务器线程中使用它们。
我的问题是:
- 你能确认这个例子是错误的吗?
- 应该怎么做,锁定广播方法是否足够(标记为临界区)?
- 你能推荐一些套接字通信教程(.Net 首选)吗?