Тема очереди в Blackberry - PullRequest
       13

Тема очереди в Blackberry

7 голосов
/ 23 ноября 2010

Я посмотрел на BB API (5.0) и не могу найти способа последовательного выполнения пакета потоков. Я знаю, что у BB есть ограничение на количество потоков, которые он запускает, поэтому я не хочу запускать 7, если пользователь достаточно быстро переключается, но я не могу найти ничего, как пул потоков.

Есть ли простое исправление для этого или мне нужно создать структуру данных?

Ответы [ 2 ]

10 голосов
/ 23 ноября 2010

Если вы просто хотите последовательно выполнять несколько задач в одном потоке, а порядок не важен, вы можете создать объект Timer (который имеет свой собственный поток), а затем добавить к нему каждую задачу. как TimerTask . Если вы запланируете его с задержкой 0 или 1, он по сути запустит эту задачу как можно скорее. А поскольку у таймера есть только один поток, если вы запланируете несколько задач одновременно, он будет гарантировать, что одновременно будет выполняться только один поток.

Между прочим, в этом году я разговаривал с инженером RIM на конференции разработчиков BlackBerry, и он сказал, что начиная с OS 5.0 больше нет ограничений на количество потоков - так что это становится все менее и менее проблемным.

1 голос
/ 23 ноября 2010

Я протестировал пример пула потоков Джеффа Хитона на 4.5, и он работает. (http://www.informit.com/articles/article.aspx?p=30483&seqNum=1).

...