Ультраниры цена в Москве11.09.2017Между установкой блокировки пробуждения (освещенной зеленой комнаты) в приемнике и запуском службы, по существу — вызовом onStartCommand (входом первого посетителя в комнату), может и, как правило, существует задержка. Поскольку блокировка пробуждения является подсчитываемой ссылкой, когда возникает необходимость в останове службы из-за нехватки памяти, было бы желательно явно освобождать блокировки. Если та же самая освещенная зеленая комната используется для обслуживания нескольких служб, может понадобиться отслеживание последней уничтожаемой службы и освобождение блокировки только один раз, когда служба завершается. Чтобы реализовать такой шаблон, создадим клиент. Каждая служба будет регистрироваться в освещенной зеленой комнате в качестве клиента, чтобы ее метод уничтожения работал. Кроме того, понадобится отслеживать события входа (enter()) и выхода (leave()) для каждого вызова startService(). Узнайте ультраниры цена в москве здесь. Реализация освещенной зеленой комнаты После объединения всех концепций, описанных в предыдущем разделе, реализация освещенной зеленой комнаты принимает вид, показанный в листинге 19.17. Следует отметить, что эта реализация успешно работала во время проведенного ограниченного тестирования. Измените ее в соответствии с конкретными нуждами, поскольку достаточно сложно учесть все ситуации, которые могут существовать в каждой конкретной среде разработки. (Другими словами, относитесь к этому примеру, как к экспериментальному.)
|
|
|