【发布时间】:2011-11-10 17:17:33
【问题描述】:
好的,我想连接到 Socket 并使用 System.Net.Sockets.NetworkStream 类读取网络流。这是我目前所拥有的:
NetworkStream myNetworkStream;
Socket socket;
socket = new Socket(AddressFamily.InterNetwork, SocketType.Raw,
ProtocolType.IPv4);
socket.Connect(IPAddress.Parse("8.8.8.8"), 8888);
myNetworkStream = new NetworkStream(socket);
byte[] buffer = new byte[1024];
int offset = 0;
int count = 1024;
myNetworkStream.BeginRead(buffer, offset, count, ??, ??);
现在我需要一个AsyncCallback 和一个Object state 来完成我的BeginRead 方法,但我什至不确定这是否可行。在这一点上我有点迷路了!我需要从这里去哪里?
【问题讨论】:
-
你走错了路。使用 Socket.BeginReceive() 的 MSDN 库示例代码。
-
你有理由使用异步版本吗?你不能用
Read()吗? -
这行得通吗?最终我想拥有一个持续运行的服务,但现在我只想看到一些结果。另外,谢谢汉斯,我会检查一下。
标签: c# network-programming networkstream