Windows中每个进程和每台计算机可以使用多少个同步对象?

时间:2009-05-06 11:51:29

标签: windows synchronization

很可能存在一个限制,即一个进程和一个给定计算机上的所有进程使用多少同步对象(信号量,事件,关键部分)。究竟是什么限制?

2 个答案:

答案 0 :(得分:4)

对于Windows,内核句柄(信号量,事件,互斥锁)的每进程限制为2^24

来自MSDN

  

内核对象句柄是进程   具体。也就是说,一个过程必须   要么创建对象,要么打开一个   现有对象获取内核   对象句柄。每个进程的限制   在内核句柄上 2 ^ 24 。然而,   句柄存储在页面缓冲池中,   所以处理你的实际数量   可以创建基于可用   记忆。你的手柄数量   可以在32位Windows上创建   显着低于2 ^ 24。

答案 1 :(得分:2)

这取决于该流程可用的配额。我认为在XP中每个进程设置为10000,但它可以增长。我不确定上限是什么。

再次检查它,10000限制是针对GDI句柄而不是针对内核对象。