【发布时间】:2016-01-29 04:33:16
【问题描述】:
我需要编写一个 TCP 客户端来与服务器通信。查看代码示例(Socket、TcpClient?),考虑到我在 C# 冒险中其他地方看到的情况,我似乎无法找到任何感觉像“现代”的方法来解决这个问题。
我想我特别希望看到像 await socket.Connect(args) 这样的任务和代码,但我看到的是基于回调的异步或 BeginX 方法...
在这里,我有哪些选择?我是继续使用它并在没有 TPL 的情况下使用某些东西,还是有其他方法?
非常感谢!
【问题讨论】:
-
看看这个SO answer。您还可以查看 Stephen Toub 在其博客上的 Awaiting Socket Operations 文章。
-
所有这些样本都很糟糕。既然 await 存在,就永远不要使用带有 APM 模式的套接字!另外,质疑你是否需要异步。同步 IO 更简单。