所以我明白发送是同步的而BeginSend是异步的。我听说套接字发送方法对于数据传输来说更快,然后BeginSend(注意:我不是在谈论CPU性能,而只是发送和接收数据包延迟)。任何人都可以告诉我,如果这是真的或不?这篇文章我指的是在哪里听到同步数据传输,如下所示... 如果它是真的,是否有解决方法?或者,这就是使用异步数据传输时的情况。C#套接字发送vs BeginSend性能
非常感谢您的帮助。
文章文本:
的这些形式的通信两者都是发送数据的装置。区别在于数据传输的格式。 异步通信是PC通信中使用最广泛的通信方法,通常用于电子邮件应用程序,Internet访问以及异步PC对PC通信。通过异步通信,数据一次传输一个字节,每个字节包含一个起始位,八个数据位和一个停止位,从而总共产生十个位。使用异步通信时,会有大量开销,因为每发送一个字节都会包含两个额外的位(起始位和停止位),因此性能会大幅下降。
同步通信是更有效的通信方式。 CQ的连接解决方案通过同步通信方式进行通信。 通过同步通信,数据以大数据块的帧传输,而不是庞大的单个字节。同步的一个优点是控制信息很容易插入每个块的开始和结尾,以确保恒定的时间或同步。同步的另一个优点是它比异步更有效。例如,56 Kbps拨号同步线路每秒可传输7000字节(56000/8),而56 Kbps拨号异步线路每秒传输5600字节(56000/10)。当传输大量信息时,这意味着速度和性能的显着提高。
您应该添加一个链接回原始文章(假设它在线)。互联网业力比其他任何事情更多。 – 2011-05-19 14:24:36
http://www.cq-comm.com/faq.htm – Guillaume 2011-05-19 14:59:04
听起来我喜欢这篇文章谈论的是较低的传输层(通过物理连接传输比特的特定封装)而不是套接字层,这是如何形成数据包并将其发送到底层网络驱动程序的方式。 – 2011-05-19 15:08:01