Главная » Разработка для Android » Основы многопоточного параллельного программирования в Java ДЛЯ ANDROID

0

 

В языке Java поддерживаются параллельные (конкурентные) потоки выполнения задач. Утверждения, содержащиеся в различных потоках, выполняются в запрограммированном порядке, но порядковые отношения отсутствуют между утверждениями, находящимися в различных потоках. Базовый элемент параллельного исполнения Bjava заключен в классе Java .Tang.Thread. При рекомендуемом методе

порождения потоков используется реализация интерфейса Java.Tang. Runnablе, как показано в следующем примере:

В предыдущем примере метод spawnThread создает новый поток, передавая новый экземпляр ConcurrentTask конструктору потока. Затем метод вызывает start к новому потоку. После вызова метода start, относящегося к потоку, базовая виртуальная машина (VM) создает новый параллельный поток исполнения, который, в свою очередь, вызовет метод run переданного Runnabl е, выполняя эту задачу одновременно с порождением потока. В этот момент в виртуальной машине происходит два независимых процесса: порядок исполнения и хронометраж в одном потоке никак не связаны с порядком и хронометражем другого.

Класс Thread не является final. Можно определить новую параллельную задачу, сделав подкласс Thread и переопределив его метод run. Но этот подход не отличается особыми преимуществами. На самом деле Runnabl е больше пригоден к адаптации. Поскольку Runnabl е – это интерфейс, тот Runnablе, который вы передаете конструктору Thread, может дополнить какой-нибудь другой полезный класс.

Источник: Android. Программирование на Java для нового поколения мобильных устройств

По теме:

  • Комментарии