首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨平台同步原语,允许确定哪个PID正在使用它们

跨平台同步原语,允许确定哪个PID正在使用它们
EN

Stack Overflow用户
提问于 2019-06-20 16:32:59
回答 1查看 76关注 0票数 1

我需要为进程同步原语设计一个包装器,它的作用类似于一个信号量,假设限制为1(这样只有一个客户端可以同时锁定它)。如果这是唯一的要求,那么我可以只使用命名信号量。但我也想知道,在客户端无法锁定原语的情况下,实际上是谁锁定了它。最好的方法是知道锁定进程id。我知道如何在使用semctlGETPID的POSIX系统上实现这一点,但是Windows没有公开任何类似的东西。我也知道我可以通过文件轻松实现这一点(例如,使用共享的读和非共享的写权限打开一个已知文件-当锁定客户端创建该文件并写入时,它是PID,以便其他人可以读取它),但如果可能的话,我希望使用实际的操作系统API原语而不是文件系统。这个是可能的吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-20 18:23:31

在Windows中有一个Wait Chain Traversal,可以让你看到谁锁定了什么。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56682052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档