Multitasking w Windows Phone 7 - jest, ale ukryty

2010-07-22 11:29

Doug Boling jest jednym z wielu programistów specjalizujących się w programowaniu dla systemów Windows Embedded CE i Windows Mobile. Na swoim blogu ostatnio napisał bardzo ciekawy artykuł wyjaśniający jak można napisać program pod Windows Phone 7 tak by był w stanie działać w tle.

To fakt, że Microsoft w pierwszej wersji WP7 nie będzie wspierał multitaskingu w takiej postaci jakiej znamy z komputerów stacjonarnych. Można jednak obejść ten problem jeśli jest się dobrym programistą.

Nowy mobilny system Microsoftu pozwala deweloperowi uruchomić więcej niż jeden wątek w tworzonej aplikacji. To znaczy, że prócz wątku z interfejsem może istnieć watkę zajmujący się obliczaniem. Dzięki temu nadal można korzystać z interfejsu programu pomimo tego, że w tle są przetwarzane dane.

Inny przykład: program służący do przeliczania walut. Mamy wątek obsługujący interfejs, drugi pobiera dane z internetu a trzeci czeka na plik z drugiego wątku. Jeśli byśmy nacisnęli przycisk "back" na obudowie smartphonu. System wyłączył by tylko wątek odpowiedzialny za interfejs ale pozostawi by resztę bez zmian.

Oczywiście programista może przerwać wszystko jeśli wykryje naciśniecie przycisku "back". Jeśli tego natomiast nie zrobi, proces nadal będzie aktywny i w przypadku naszego przelicznika walut, będzie nadal pobierać dane i po stworzeniu odpowiedniego pliku przetworzył by go. Gdybyśmy ponownie uruchomili program - dane byłby już gotowe dla interfejsu.

Gdybyśmy natomiast nie uruchomili przez dłuższy czas aplikacji. Mogła by powstać sytuacja, w której system potrzebowałby dodatkową pamięć lub mocy procesora. Wtedy wymusiłby zamknięcie nieistotnych procesów. Dzięki temu użytkownik nie odczułby np. przycinania się interfejsu podczas przewijania długiej listy kontaktów.

Jak widać Microsoft pozostawił małą furtkę dla programistów ale trzeba z niej mądrze korzystać ponieważ Windows Phone 7 ma swoje priorytet i w razie potrzeby zabije każdy zbędny proces.

Polecamy również na PDA.pl: Prosta gra Paint Relax Lite dla Windows Mobile

Najnowsze