同步分布式文件系统中的上载和下载操作

时间:2018-09-27 20:31:00

标签: synchronization distributed-system

我被赋予一项任务,以使用python中的套接字编程实现文件上传和下载服务,例如Dropbox。我正在为服务器及其操作(下载,上传,重命名和删除)进行多线程处理,方法是为每个操作创建线程。但是,我一直想知道当多个客户端尝试访问同一文件,一个客户端下载并另一个客户端上传(更改文件状态)时出现的问题。现在,应该阻塞client1的下载线程,直到执行client2的上传线程以维护用户(共享文件系统)中文件的状态为止。我还认为使用“锁”不会解决此问题。如果client1的下载线程首先获得锁定,然后又获得上传线程怎么办?如何在上载完成之前停止执行下载线程?由于所有这些操作都是离散的,我如何知道在运行时有一个上传线程和一个下载线程?

0 个答案:

没有答案