我在c#中创建了一个lanmessenger。我有代码通过端口接收和发送消息,但我对如何使用它们有“轻微”的困惑。 我是否应该经常调用侦听每个事件中接收传入消息的端口的函数?如果是,那我该如何调用将发送消息的函数?
答案 0 :(得分:2)
使用异步方法(例如BeginReceive
),或查看threading ...
如果您使用异步方法,则不会因轮询而陷入困境,因为收到数据时您会收到callback。
如果你使用线程,你可以轮询(例如通过检查循环中TcpClient
的{{3}}属性),它不会阻止你的其余代码执行,因为投票将在自己的主题中。