Неверно утверждать, что в LINUX нет отдельных потоков на ограничение процесса.
Linux реализует максимальное количество потоков на процесс косвенно !!
number of threads = total virtual memory / (stack size1024)
Таким образом, количество потоков на процесс может быть увеличено путем увеличения общей виртуальной памяти или уменьшения размера стека. Но слишком большое уменьшение размера стека может привести к сбою кода из-за переполнения стека, а максимальная виртуальная память равна памяти подкачки.
Проверьте свою машину:
Общая виртуальная память: ulimit -v
(значение по умолчанию не ограничено, поэтому вам нужно увеличить объем подкачки, чтобы увеличить это)
Общий размер стека: ulimit -s
(по умолчанию 8Mb)
Команда для увеличения этих значений: *1024*
ulimit -s newvalue
ulimit -v newvalue
* Замените новое значение значением, которое вы хотите установить в качестве предела.
Ссылка:
http://dustycodes.wordpress.com/2012/02/09/increasing-number-of-threads-per-process/