Solaris 线程的最大数量
这是如何确定的 - 是由定义的线程数还是内存量决定的?在哪里可以更改?我在某处读到每个线程分配了 1 MB,但不太确定。
How is this determined - is it by the number of threads defined or the amount of memory and where can it be changed? I read somewhere each thread is allocated by 1 mb, but not too sure.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
理论上,4294967294 (2^32-2)。
实际上,由于隐式(可用内存)或显式(task.max-lwps、project.max-lwps 和 zone.max-lwps 可调参数)限制,限制将显着降低。
请注意,可以使用 lwp_default_stksize 可调。默认情况下,它远低于您建议的 1 MB。
In theory, 4294967294 (2^32-2).
In practice, the limit will be significantly lower due to either implicit (memory available) or explicit (task.max-lwps, project.max-lwps and zone.max-lwps tunables) limitations.
Note that the threads stack size can be adjusted using the lwp_default_stksize tunable. It is by default much lower than the 1 MB you suggest.