gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-04 02:21:47 24 4
gpt4 key购买 nike

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

最佳答案

在 Windows 中有 Wait Chain Traversal这让您可以看到谁锁定了什么。

关于允许确定哪个 PID 正在使用它们的跨平台同步原语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56682052/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com