Работа с потоками - PullRequest
       24

Работа с потоками

0 голосов
/ 08 апреля 2011

Как правильно управлять потоками, работающими в фоновом режиме?

Например, у меня есть Activity, которая создает несколько потоков. Мне нужно сделать следующее:
1) Уничтожить все темы, когда приложение уничтожено
2) Приостановить темы, созданные в Activity, если пользователь уходит из Activity
3) Уничтожить темы, созданные в Activity, если активность уничтожена

Единственное, что мне приходит в голову, - это чтобы все переменные потоков были объявлены как публичные, чтобы иметь возможность выдавать t.destroy () или что-то подобное в этих событиях, которые я перечислил выше. Во-первых, я не уверен, что это правильно, а во-вторых, мне это не нравится, потому что мне придется изменить код, чтобы убедиться, что я могу ссылаться на все созданные мной потоки.

Например, у меня есть ситуация, когда моя активность создает новый объект (например, LoadImages.class), и эти объекты создают несколько потоков в зависимости от того, сколько изображений должно быть загружено. Потоки не видны из вызывающей активности.

Итак, нужно ли передавать потокам ссылки на вызывающее действие, или есть какой-то способ узнать, кто является родителем потока, и уничтожить только поток с определенным родительским действием?

1 Ответ

0 голосов
/ 08 апреля 2011

Для LoadingImages Я думаю, что есть простое решение: есть открытый метод на LoadingImage с именем release, который позволит ему высвобождать свои собственные ресурсы.

Если каждое из ваших действий разрушает свои темы, я не вижу необходимости в вашем шаге 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...