Web API 服务器后端有几个文件夹。它们每个都是一个 git 存储库。让我们称呼他们吧
- 项目1
- 项目2
- 项目3
如何在服务器上创建锁定,以便项目中只有一个用户(线程)可以使用特定文件夹?目前我已经使用静态对象和监视器类实现了简单的锁定。但在这种情况下,对文件夹的访问在全局级别上被锁定,而锁定应该独立地应用于每个文件夹。
哪种 .NET 线程工具最适合我的情况?
最佳答案
全局锁定事物需要 Mutex .
您可以使用前缀“Global\”为互斥锁指定一个全局唯一的(在计算机上)名称(例如 “Global\\project1”
、“Global\\project2 "
和 "Global\\project3"
) 并查看它是否被其他人使用。
有一个关于如何完美使用的可靠线索 here .
关于c# - 多个对象上的多个独立锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42293703/