0
我有一臺服務器,用Python編寫的,這只是複製從內部存儲所請求的文件在Windows網絡共享:是否可以強制同步Windows網絡共享?
import shutil
import os.path
class RPCServer(SimpleXMLRPCServer):
def fetchFile(self, targetDir, fileName):
try:
shutil.copy(
os.path.join(server_path, fileName)
os.path.join(targetDir, fileName)
)
f = open(filepath, 'a')
f.flush()
os.fsync(f.fileno())
f.close()
return os.path.join(targetDir, fileName)
except Exception, e:
return ''
當客戶端試圖打開該文件的RPC調用有時返回之後,失敗,說該文件不可用:
class RCPClient():
def fetchFile(self, fileName):
filepath = server.fetchFile(targetDir, filename)
f = open(filePath) # Exception here
怎麼回事?服務器中的fsync是否確保該文件可用?有沒有辦法在客戶端的網絡共享上同步文件夾?