C#SocketAsyncEventArgs-发送数据包

C#SocketAsyncEventArgs-发送数据包,c#,C#,我目前正在将服务器代码从TcpListener更改为SocketAsyncEventArgs。我正在使用Stan Kirk()的伟大代码。问题,我现在在竞争;我的服务器在接受新连接后不久,必须发送一个10字节的数据包,而不是接收。(byte[]_packet=new byte[10]{10,0,0,0,4,0,3,0,1,1};)我不太确定怎么做。有谁能帮我写一个简单的SendPacket函数,这样我就可以轻松地将字节数组发送到传入套接字中?您链接到calls的代码StartSend(…)在Pr

我目前正在将服务器代码从TcpListener更改为SocketAsyncEventArgs。我正在使用Stan Kirk()的伟大代码。问题,我现在在竞争;我的服务器在接受新连接后不久,必须发送一个10字节的数据包,而不是接收。(byte[]_packet=new byte[10]{10,0,0,0,4,0,3,0,1,1};)我不太确定怎么做。有谁能帮我写一个简单的SendPacket函数,这样我就可以轻松地将字节数组发送到传入套接字中?

您链接到calls的代码
StartSend(…)
ProcessReceive
中,您可以在
ProcessAccept
中的某个地方调用相同的方法。但最有可能的是,这并不是你的应用程序需要做的全部,你实际上需要在你的代码中有一个特定的状态机。你为什么不仔细阅读整篇文章和评论呢?方法名称相当清楚地表明了他们在做什么。这篇文章已经有7年的历史了。。。小心。。。我怀疑您是否真的需要切换到
SocketAsyncEventArgs
。具体来说,您是否测量过与
IAsyncResult
实例相关的高GC?否则,更改API是毫无意义的。无论如何,如果你仍然觉得有必要继续,PFX团队中一位相当聪明的主管写道,这使得使用
SocketAsyncEventArgs
a(少量)通过提供
async/await
电源更容易。除非您全面了解TCP/IP编程,特别是Windows上的套接字操作,否则不要使用
SocketAsyncEventArgs
。您的服务器是否存在明显的性能问题?你能证明这些与使用
TcpListener
有关,而不是与其他任何东西有关吗?您是否已经在使用异步I/O而不是每个客户端使用一个线程?如果没有,不要使用
SocketAsyncEventArgs
,而是首先关注明显的问题,否则成本是不合理的在
ProcessReceive
中,您可以在
ProcessAccept
中的某个地方调用相同的方法。但最有可能的是,这并不是你的应用程序需要做的全部,你实际上需要在你的代码中有一个特定的状态机。你为什么不仔细阅读整篇文章和评论呢?方法名称相当清楚地表明了他们在做什么。这篇文章已经有7年的历史了。。。小心。。。我怀疑您是否真的需要切换到
SocketAsyncEventArgs
。具体来说,您是否测量过与
IAsyncResult
实例相关的高GC?否则,更改API是毫无意义的。无论如何,如果你仍然觉得有必要继续,PFX团队中一位相当聪明的主管写道,这使得使用
SocketAsyncEventArgs
a(少量)通过提供
async/await
电源更容易。除非您全面了解TCP/IP编程,特别是Windows上的套接字操作,否则不要使用
SocketAsyncEventArgs
。您的服务器是否存在明显的性能问题?你能证明这些与使用
TcpListener
有关,而不是与其他任何东西有关吗?您是否已经在使用异步I/O而不是每个客户端使用一个线程?如果没有,不要使用
SocketAsyncEventArgs
,而是首先关注明显的问题,否则成本是不合理的。