对多台机器传输文件public void SendFile()
{
//循环发送
foreach(IP地址 in 多台机器IP地址列表)
{
Socket.Connect(IP地址);
FileStream.Read(要发送的文件);
Socket.Send(FileStream To Bytes);
Socket.close();
FileStream.close();
}
}
..............
//主程序中启动线程执行传输文件
Thread thread = new Thread(new ThreadStart(SendFile));
thread.Start();
目前遇到的问题是:
Socket.close()执行后,提示socket已关闭,这样第二个就传输不了了,只能向列表中的第一台传输。
关闭Socket执行,提示“文件正被使用,不能操作”。估计是第一个传输还没完成,第二个传输开始去读取文件了。
请问如何解决这个问题?谢谢!
{
//循环发送
foreach(IP地址 in 多台机器IP地址列表)
{
Socket.Connect(IP地址);
FileStream.Read(要发送的文件);
Socket.Send(FileStream To Bytes);
Socket.close();
FileStream.close();
}
}
..............
//主程序中启动线程执行传输文件
Thread thread = new Thread(new ThreadStart(SendFile));
thread.Start();
目前遇到的问题是:
Socket.close()执行后,提示socket已关闭,这样第二个就传输不了了,只能向列表中的第一台传输。
关闭Socket执行,提示“文件正被使用,不能操作”。估计是第一个传输还没完成,第二个传输开始去读取文件了。
请问如何解决这个问题?谢谢!
第一:主控线程。
第二:监听线程。
第三:发收线程。
吖.回复可见 希望会有详细的注释什么的吧