2013-09-06 4 views
0

У меня есть приложение, в котором есть довольно много обработчиков, и некоторые из них, кажется, останавливаются случайным образом, и, как повезло, это более важные. Есть ли максимальное количество обработчиков, чем может быть запущено за один раз, или это более чем вероятно проблема с кодом, который некоторые из них не сбрасываются?Имеет ли у android максимальное количество обработчиков?

Пожалуйста, не запрашивайте код, проект огромен,> 20 000 строк кода, поэтому публикация каждого экземпляра обработчика невозможна, я просто хочу знать, есть ли ограничение на количество обработчиков, которые вы можете иметь работает в любой момент времени.

ответ

1

Я думаю, что нет предела, но если есть слишком много работы, чтобы сделать за один раз Android убивает потоки/обработчики.

Вместо создания слишком много обработчиков попытаться сделать это так: Multiple threads

+0

проблема много из них должны быть запущены одновременно. Могут ли потоки, ожидающие доступа к критическому разделу, быть включенными в список потоков, пытающихся сделать слишком много? – Cob50nm

+0

Я думаю, да, если есть слишком много. Возможно, вы можете попробовать сделать меньше обработчиков, объединив несколько обработчиков в один. –

+0

Спасибо, я посмотрю, как это сделать. есть много вещей, которые делаются неправильно с точки зрения параллелизма на ранних этапах этого проекта, прежде чем я начал работать над этим, что в настоящее время становится более сложным – Cob50nm

Смежные вопросы