- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个类库,它为作为 Windows 注册表的 C API 提供方便的面向对象的前端。然而,我很好奇,对于复制我的 key
类的情况,处理 HREG
的最佳做法是什么。
我也可以
DuplicateHandle()
。然后始终在析构函数中调用 RegCloseKey。DuplicateHandle()
设计要简单得多,但我担心以这种方式设计的东西是否会严重影响应用程序的性能。因为我的应用程序通过数十万个键递归,所以复制此对象的速度是一个敏感问题。
DuplicateHandle()
函数的固有开销是什么?
最佳答案
我怀疑您会发现 DuplicateHandle 的开销很小。内核已经为每个打开的对象管理了一个引用计数,DuplicateHandle 为目标进程向内核句柄表添加了一个新条目,并增加了对象引用计数。 (DuplicateHandle 通常也会进行安全检查,但如果源进程和目标进程相同,它可能会跳过该检查。)
如果您同时打开数十万个对象,您可能会遇到困难,这取决于 Windows 允许您打开多少个句柄。
关于c++ - DuplicateHandle 的代价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1744016/
为什么一个进程想要从 Win32API 调用 DuplicateHandle,并从另一个进程获取它,而不是仅仅获取某个对象本身的句柄? 调用 DuplicateHandle 或其他东西有什么好处吗?
我正在编写一个类库,它为作为 Windows 注册表的 C API 提供方便的面向对象的前端。然而,我很好奇,对于复制我的 key 类的情况,处理 HREG 的最佳做法是什么。 我也可以 分配一个堆整
Windows API DuplicateHandle() http://msdn.microsoft.com/en-us/library/ms724251(VS.85).aspx需要复制对象句柄以及
我从签名中了解到和 documentation的 DuplicateHandle ,我可以从外部(可能不相关)进程复制句柄,前提是我有权限并且知道进程 ID 和句柄值。这是真的吗? 如果是这样,必须向
我正在尝试使用 GetThreadContext 打开进程重复句柄并从线程句柄查询信息,但出现错误 ERROR_INVALID_HANDLE 或 ERROR_GEN_FAILURE。关于这方面的信息似
我试图找出我继承的一些 Win32 管道代码中的问题。这是old standby的 CreatePipe() x2 后跟 DuplicateHandle() x2 和 CreateProcess()
我使用 Windows Hook 向我的应用程序发送消息,系统上的每个应用程序都会通知该应用程序有关 Windows 事件。 为了执行消息参数的编码,我使用了共享内存。外部进程调用 Duplicate
我有两个进程,一个 32 位,另一个 64 位,我需要复制其他进程使用的一些句柄。 在 x64 中,HANDLE 大小足以容纳 32 位句柄,但是当我在针对 x64 的 x86 进程中调用 Dupli
您好,我试图挂起一个远程线程,但在途中我偶然发现 DuplicateHandle 失败并出现错误 6,ERROR_INVALID_HANDLE。 下面的方法适用于当前进程,但如果给出了像“calc”(
我正在寻找 DuplicateHandle()非常困惑。第三个和第四个参数 hTargetProcessHandle 和 lpTargetHandle 似乎暗示这个 API 函数进行某种形式的进程间通
我是 Android 的新手,在使用 ndk-build 命令时遇到问题。我在 Windows 7 64 位下使用 NDK r9d。 当我运行我的构建系统创建我的 Android 项目(makefil
我是一名优秀的程序员,十分优秀!