gpt4 book ai didi

windows - 进程 ID 和进程句柄之间有什么区别

转载 作者:可可西里 更新时间:2023-11-01 13:29:58 24 4
gpt4 key购买 nike

进程 ID 是唯一标识进程的数字。进程句柄也是一个唯一标识进程内核对象的数字。

为什么我们需要它们,因为它们中的任何一个都可以标识一个过程。

我想答案可能在于进程与进程内核对象之间的映射关系。多个进程内核对象是否可以映射到一个进程?并且每个进程内核对象都有自己的进程句柄。这样每个进程内核对象都可以代表不同的访问模式或类似的东西。

当我使用 MiniDumpWriteDump() 时,我想到了这个问题。函数,声明如下:

BOOL WINAPI MiniDumpWriteDump(
__in HANDLE hProcess,
__in DWORD ProcessId,
__in HANDLE hFile,
__in MINIDUMP_TYPE DumpType,
__in PMINIDUMP_EXCEPTION_INFORMATION ExceptionParam,
__in PMINIDUMP_USER_STREAM_INFORMATION UserStreamParam,
__in PMINIDUMP_CALLBACK_INFORMATION CallbackParam
);

所以它的参数包括进程id和进程句柄。我只是不知道为什么必须同时拥有它们。

非常感谢您的见解。

最佳答案

进程句柄是

  1. 任意
  2. 内部处理获取它。私有(private)的,不能在线程/进程之间共享
  3. 它也具有安全访问权限

进程ID是

  1. 独一无二
  2. 通用的,公共(public)的,所以它可以在线程/进程之间共享

关于windows - 进程 ID 和进程句柄之间有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4120849/

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