额外进程文件锁

发布于 2024-07-18 04:37:03 字数 396 浏览 6 评论 0原文

我有一个 .NET 系统,需要允许跨进程边界锁定和解锁文件。 我计划使用的模型是这样的:

  1. 用户生成锁定令牌
  2. Uses 使用令牌锁定文件并
  3. 根据需要刷新令牌 在 #2 处重复
  4. Uses 通过释放令牌解锁所有文件
  5. 如果 use 在某个时间范围内刷新令牌失败,则 #4自动发生

每个步骤都可以从不同的进程完成。

问题有两个:这是一个合理的模型吗?是否有任何现成的工具可以实现它?如果这不能直接在操作系统中完成,我正在考虑某种建议使用 .file 等锁定。

编辑:此模式获取非独占读锁,但其他模式可以获得独占写锁,但它们始终由获取它们的同一进程释放。

I have a .NET system where I need to allow files to be locked and unlocked across process boundaries. The model I plan to use is this:

  1. User generate a lock token
  2. Uses Locks a file with token and refreshes token
  3. repeat at #2 as needed
  4. Uses unlocks all files by releasing token
  5. If uses fails to refresh token in some time-frame, #4 happens automatically

Each step can be done from a different process.

The question is two fold: is this a reasonable model and are there any readily available tools for implementing it? If this can't be directly done in the OS, I'm thinking of some sort of advisory locking with .files or the like.

Edit: this mode gets non-exclusive read locks, but other modes could get exclusive write locks but they would always be released by the same process that got them.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文