Linux最大线程数的问题.
古月书斋 2007-02-13 10:23:44 线程数跟系统资源也有关系,在kernel中有这样的代码:
max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);
/*
* we need to allow at least 20 threads to boot a system
*/
if(max_threads < 20)
max_threads = 20;
init_task.signal->rlim[RLIMIT_NPROC].rlim_cur = max_threads/2;
init_task.signal->rlim[RLIMIT_NPROC].rlim_max = max_threads/2;
当内存总数不多时,线程数也会限制在一定数额。
请问 max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);
这里为什么要多除以一个8?
小弟是初学者,请各位大虾指点一下.