只有在Python程序关闭后才能成功传输文件

2024-04-26 21:39:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用pythonsocket编程构建一个对等应用程序。我可以将文件从A发送到B和B发送到A,但有时文件只在任何一方(A或B或A和B)关闭程序后出现。有人遇到过这样的问题吗?有时,文件可能不会出现,我意识到这是由于文件的大小。对于太大的文件,它不会完全传输。可能是因为我在代码中添加了5秒的超时?你知道吗

clientThread.join(5)
clientThread_stop.set()
serverThread.join(5)
serverThread_stop.set()

在这种情况下,我应该删除上面的代码吗?但是,如果我删除它,我无法传输文件。。。你知道吗

编辑: 下面是我处理文件写入的部分代码:

filename=destination+'/'+filename
print "reading file: " + filename
file = open(filename,'wb')
print "writing file: " + filename
file.write(data)
file.flush();
file.close()

Tags: 文件代码应用程序编程filenamefilestopprint