我使用 tcp 协议进行了 p2p 聊天,其中每个用户都运行一个服务器(有一个 TcpListner 监听)。那是问题吗?
- - -编辑
我需要补充一点,侦听器在一个线程上,而客户端在另一个线程上
在另一个线程上运行监听器并在另一个线程上编写很好,或者您可以使用异步监听器。那么实际的问题是,除非您使用 TCP 打孔技术,否则聊天应用程序将无法在您的 LAN 之外运行。我希望你知道你在做什么。只是为了获得更多信息,我可以在这里添加一些事实。如果您打算在 LAN 外使用该应用程序,那么您需要通过您的公共 IP 进行通信。如果您的公共 IP 不是静态的,那么您的请求将被 NAT 阻止。为了克服这个问题,您需要使用 TCP/UDP 打孔来打破 NAT。只需在谷歌上搜索,您将获得更多关于此的教程。如果它们都不适合你,请告诉我。