关于tcpclient超时

时间:2012-10-23 18:11:05

标签: multithreading c#-4.0 ftp timeout tcpclient

我在端口21上有tcplistener等待传入连接。当tcplistener收到传入请求时,我通过实例化新的Tcpclient建立控制连接,FTP命令和响应在控制通道上完成。    如果在tcplistener上有任何数据传输请求,如LIST,RETR,STOR命令,我将在输出(IP地址和端口)上建立一个新的TCpclient,由PORT命令提供。第二个Tcpclient将处理请求的数据传输。

问题:在大量文件传输期间,第一个tcpclient(控制通道)将处于空闲状态。它将在60秒内被处理\关闭。

替代方法:将一个线程附加到tcpclient,同时继续使用Thread.Sleep向tcplistener发送keep alive命令“NOOP”几秒钟,直到数据传输完成。

问题:我尝试了套接字级设置,如socket.IOCOntrol用于控制通道tcpclient,但它没有用完。如何将一个线程附加到tcpclient,发送keep live命令/或任何其他更好的建议以保持控制通道在文件传输。

此致 的Vivek

0 个答案:

没有答案