г. Москва, Милютинский пер., д.8, стр.2 Тел.: 8 (495) 999-70-33 |
|
|
Время работы: пн.-пт. с 9:00-21:00 сб.-вс. с 11:00-17:00 |
|
|
Каждая вариация метода устанавливает соответствующие поля в объекте сообщения. Существуют некоторые ограничения относительно аргумента Object object, когда сообщение пересекает границы процесса. В таких случаях передаваемый в Object object объект должен реализовывать интерфейс Parcelable. При этом намного безопаснее и лучше в плане совместимости явно использовать на объекте сообщения метод setData(), который принимает экземпляр Bundle. В листинге 17.4 как раз применяется подход с setData(). Если планируется передавать простые индикаторы, которые могут быть представлены целочисленными значениями, имеет смысл использовать для этого вариации obtainMessage() с аргументами arg1 и arg2.
Аргумент what позволяет извлечь сообщение из очереди либо проверить, присутствует ли в очереди сообщения заданного типа. Дополнительные детали можно найти, ознакомившись с описанием операций в документации по классу Handler. В разделе “Ссылки” конце главы приведен соответствующий URL-адрес. Возможно вам понадобятся фекальные насосы.
Итак, приступим к рассмотрению классов ResportStatusHandler и WorkerThread Runnable. Они не были представлены ранее из-за того, что мы стараемся применять нисходящий подход к проектированию, при котором сначала все описывается на высоком уровне, а затем производится углубление в детали каждой концепции.