Ответ 1
Эта страница в Центре Mac Dev дает вам затраты на распределение потоков, которые вы можете сделать из предполагаемого предположения:
Стоимость ядра 1kb
1 бит стека пространства на iPhone
Время создания 90 микросекунд
В руководстве говорится, что вы попросите ОС выделить ваше приложение 50 МБ 128 МБ оперативной памяти, если вы создаете 50 потоков:
Пространство для этой памяти отложено в вашем пространстве процесса в потоке время создания, но фактические страницы связанные с этой памятью не созданные до тех пор, пока они не понадобятся
Это похоже на большую сумму - и в этом сообщении в блоге подробно говорится о том, что если вы пытаетесь использовать более 46 мб ram ваше приложение замерзнет, а затем будет убито через 5-10 секунд ОС.
Так что действительно 15-20 потоков - это безопасная сумма, но, конечно, это зависит от того, сколько памяти потребляет каждый поток в выполняемых ею операциях, а также как быстро завершается поток. Память освобождается после завершения потока.