Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 使用并行TCP连接进行较慢的数据传输_Objective C_Sockets_Networking_Tcp_Asyncsocket - Fatal编程技术网

Objective c 使用并行TCP连接进行较慢的数据传输

Objective c 使用并行TCP连接进行较慢的数据传输,objective-c,sockets,networking,tcp,asyncsocket,Objective C,Sockets,Networking,Tcp,Asyncsocket,我使用TCP AsyncSocket将一个大文件从一台机器传输到另一台机器,使用本地连接将主机作为本地IP地址 首先,我设置了单个TCP套接字连接,感觉数据传输速度很慢。大约1mb/秒 为了加快速度,我在不同线程的不同端口上创建了10个TCP套接字,并开始同时读取文件的分区。但这没什么区别。传输速率几乎与单个TCP套接字连接相同,甚至更慢 有什么想法吗?为什么多个TCP套接字不并行传输数据?通过TCP快速传输文件的任何方法或建议?只有在I/O通道未饱和且任务为单核绑定时,并行I/O操作才有帮助

我使用TCP AsyncSocket将一个大文件从一台机器传输到另一台机器,使用本地连接将主机作为本地IP地址

首先,我设置了单个TCP套接字连接,感觉数据传输速度很慢。大约1mb/秒

为了加快速度,我在不同线程的不同端口上创建了10个TCP套接字,并开始同时读取文件的分区。但这没什么区别。传输速率几乎与单个TCP套接字连接相同,甚至更慢


有什么想法吗?为什么多个TCP套接字不并行传输数据?通过TCP快速传输文件的任何方法或建议?

只有在I/O通道未饱和且任务为单核绑定时,并行I/O操作才有帮助

很有可能,添加额外的I/O通道实际上会降低速度,因为现在有多个客户端在争夺稀缺的资源


你需要弄清楚的是你的瓶颈在哪里?只有在量化了性能问题的实际原因之后,您才能解决它

谢谢。我尝试了FTP、Netcat等,得到了几乎相同的数据传输速度。其他因素,如路由器和活动客户端的数量也略有不同。所以,很好。