- Obecnie brak na stanie
Produkty
Kategorie
- Kategorie główne
-
- ARDUINO
- AUTOMATYKA
- CYBERBEZPIECZEŃSTWO
- DRUK 3D
- EDUKACJA
- ELEKTRONIKA
- Akcesoria PC
- Chłodzenie
- Czujniki
- Czujniki 6DOF/9DOF/10DOF
- Czujniki ciśnienia
- Czujniki gazów
- Czujniki Halla
- Czujniki jakości cieczy
- Czujniki jakości powietrza
- Czujniki magnetyczne (kompasy)
- Czujniki medyczne
- Czujniki nacisku
- Czujniki odbiciowe
- Czujniki odległości
- Czujniki PH
- Czujniki podczerwieni
- Czujniki poziomu cieczy
- Czujniki położenia
- Czujniki prądu
- Czujniki przepływu
- Czujniki przyspieszenia (akcelerometry)
- Czujniki ruchu
- Czujniki światła i koloru
- Czujniki temperatury
- Czujniki wibracji
- Czujniki wilgotności gleby
- Czujniki wilgotności powietrza
- Żyroskopy
- Drukarki
- Elementy pasywne
- Gadżety
- GPS
- Inteligentne ubrania
- Kamery i akcesoria
- Karty pamięci i inne nośniki danych
- Komunikacja
- LED - diody, wyświetlacze, paski
- Materiały przewodzące
- Moduły elektroniczne
- Akcesoria JTAG
- Audio
- Czytniki kart pamięci
- Czytniki kodów paskowych
- Czytniki linii papilarnych
- Ekspandery linii I/O
- Enkodery
- Generatory DDS/PLL
- Klawiatury, przyciski
- Konwertery CAN
- Konwertery napięć
- Konwertery RS485
- Konwertery USB - I2C / 1-Wire / SPI
- Konwertery USB - UART / RS232
- Moduły HMI
- Moduły pamięci
- Moduły RTC
- Moduły z wyjściami mocy
- Moduły zasilające
- Obraz i wideo
- Odbiorniki podczerwieni TSOP
- Potencjometry cyfrowe
- Przetworniki A/C i C/A
- Rejestratory danych (data logger)
- Sterowniki LED
- Sterowniki serw
- Sterowniki silników
- Półprzewodniki
- Button
- Czujniki
- Czujniki dotykowe (Touch)
- Diody
- Energy harvesting
- Generatory PLL
- Inne
- Konwertery logiczne
- Liczniki energii
- Mikrokontrolery
- Mikroprocesory DSP
- Mostki prostownicze
- Optotriaki i transoptory
- Pamięci
- Przetworniki a/c (ADC)
- Przetworniki c/a (DAC)
- Sterowniki i mostki IGBT
- Sterowniki LED
- Sterowniki silników
- Syntezery DDS
- Timery
- Tranzystory
- Układy analogowe
- Układy audio
- Układy cyfrowe
- Układy interfejsowe
- Układy programowalne
- Układy RF
- Układy RTC
- Układy SoC
- Układy zasilające
- Układy zerujące
- Zabezpieczenia ESD
- Przekaźniki
- Przetworniki dźwięku
- Przewody
- Przewody świecące i akcesoria
- Przełączniki i przyciski
- Płytki prototypowe
- Wyświetlacze
- Złącza
- Adaptery USB PD do laptopów
- Gniazda do kart pamięci
- Gniazdka RJ-45
- Igły testowe (pogo pin)
- Konektory
- Podstawki
- Szybkozłącza
- Zworki
- Złącza ARK (Terminal Block)
- Złącza FFC / FPC ZIF
- Złącza goldpin
- Złącza IDC
- Złącza inne
- Złącza Jack
- Złącza JST
- Złącza koncentryczne (RF)
- Złącza krokodylkowe
- Złącza obrotowe
- Złącza szufladowe D-Sub
- Złącza USB
- Złącza zasilania DC
- Akcesoria PC
- KSIĄŻKI
- MECHANIKA
- MINIKOMPUTERY (SBC)
- PRZYRZĄDY POMIAROWE
- RASPBERRY PI
- Akcesoria do Raspberry Pi
- Chłodzenie do Raspberry Pi
- Kamery do Raspberry Pi
- Karty pamięci do Raspberry Pi
- Moduły rozszerzające do Raspberry Pi
- Obudowy do Raspberry Pi
- Prototypowanie Raspberry Pi
- Przewody audio-wideo do Raspberry Pi
- Raspberry Pi 3 model A+
- Raspberry Pi 3 model B
- Raspberry Pi 3 model B+
- Raspberry Pi 4 model B
- Raspberry Pi 400
- Raspberry Pi 5
- Raspberry Pi Compute Module
- Raspberry Pi model A/B+/2
- Raspberry Pi Pico
- Raspberry Pi Zero
- Raspberry Pi Zero 2 W
- Wyświetlacze do Raspberry Pi
- Zasilanie do Raspberry Pi
- WARSZTAT
- Chemia
- Elektronarzędzia
- Igły dozownicze
- Imadła
- Kleje i klejarki
- Listwy zasilające
- Lutowanie
- Akcesoria do lutowania
- Akcesoria SMD
- Chemia lutownicza
- Cyna
- Gąbki i czyściki
- Groty do lutownic
- Grzałki oraz kolby lutownicze
- Kulki BGA
- Laminaty
- Lutownice kolbowe
- Lutownice przenośne
- Maty i akcesoria antystatyczne (ESD)
- Myjki ultradźwiękowe
- Odsysacze do usuwania cyny
- Opalarki
- Pasty lutownicze
- Pędzle i szczotki ESD
- Plecionki do usuwania cyny
- Podgrzewacze
- Podstawki pod lutownice
- Silikonowe maty do lutowania
- Stacje lutownicze
- Tygle lutownicze
- Uchwyty, lupy
- Mikroskopy
- Miniwiertarki, miniszlifierki
- Narzędzia
- Noże i nożyczki
- Okulary ochronne
- Organizery
- Pęsety
- Plotery i Frezarki CNC
- Rurki termokurczliwe
- Ściągacze izolacji
- Taśmy
- Zaciskarki
- Zasilacze laboratoryjne
- Chemia
- WYCOFANE Z OFERTY
- WYPRZEDAŻ
- ZASILANIE
- ZESTAWY URUCHOMIENIOWE
- Atmel SAM
- Atmel Xplain
- AVR
- DFRobot FireBeetle
- ESP32
- ESP8266
- Feather / Thing Plus
- Freedom (Kinetis)
- Google Coral
- Inne zestawy uruchomieniowe
- M5Stack
- micro:bit
- Moduły peryferyjne
- Nordic nRF
- OPROGRAMOWANIE
- Particle Photon
- PIC
- Programatory Segger
- Programatory uniwersalne
- Raspberry Pi RP2040
- RFID
- RISC-V
- Seeed Studio LinkIt
- Sparkfun MicroMod
- STM32
- STM32 Discovery
- STM32 MP1
- STM32 Nucleo
- STM8
- Teensy
- WRTNode
- XIAO/Qt PY
- Atmel SAM
- ZESTAWY URUCHOMIENIOWE FPGA
- ARDUINO
Nowości
Nowości
Android. Aplikacje wielowątkowe. Techniki przetwarzania
Anders Göransson
Wysyłka gratis
darmowa wysyłka na terenie Polski dla wszystkich zamówień powyżej 500 PLN
Wysyłka tego samego dnia
Jeśli Twoja wpłata zostanie zaksięgowana na naszym koncie do godz. 11:00
14 dni na zwrot
Każdy konsument może zwrócić zakupiony towar w ciągu 14 dni bez zbędnych pytań
Tytuł oryginału: Efficient Android Threading: Asynchronous processing techniques for Android applications
Tłumaczenie: Lech Lachowski
ISBN: 978-83-246-9614-7
Data wydania: 2015-02-24
Format: 168x237
Stron: 248
Wykorzystaj w pełni potencjał wątków!
Jeżeli chcesz tworzyć aplikacje dostarczające użytkownikom doskonałych wrażeń, jeżeli chcesz wykonywać skomplikowane zadania szybciej lub po prostu musisz jednocześnie wykonywać różne działania — naucz się korzystać z wątków. Tworzenie programów wielowątkowych jest trudne, ale opanowanie tej sztuki pozwoli Ci osiągnąć wymierne korzyści!
Ta książka w całości poświęcona jest korzystaniu z wątków na platformie Android. Dzięki niej poznasz przeróżne sposoby asynchronicznego przetwarzania oraz ich zalety i wady. Jednak na samym początku zapoznasz się z podstawowymi informacjami dotyczącymi wielowątkowości w języku Java. Dowiesz się, w jaki sposób wątki komunikują się ze sobą i synchronizują dostęp do zasobów oraz jak nimi zarządzać. Kolejne rozdziały zawierają sporą dawkę wiedzy na temat różnych technik asynchronicznych. Zapoznanie się z ich treścią ułatwi Ci wybór techniki, która spełni Twoje wymagania, gdy sam zabierzesz się za tworzenie aplikacji wielowątkowej. Książka ta jest obowiązkową lekturą dla programistów chcących w pełni wykorzystać możliwości platformy Android.
- Podstawy wielowątkowości w Javie i systemie Android.
- Komunikacja wątków w obrębie procesu i pomiędzy procesami.
- Zastosowanie strategii redukowania ryzyka powstawania wycieków pamięci.
- Zarządzanie cyklem życia wątku podstawowego.
- Sekwencyjne uruchamianie zadań w wątku tła za pomocą klasy HandlerThread.
- Używanie frameworku wykonawcy Javy do kontrolowania i anulowania wątków.
- Obsługa wykonywania zadań w tle za pomocą klas AsyncTask oraz IntentService.
- Uzyskiwanie dostępu do dostawców treści za pomocą klasy AsyncQueryHandler.
- Używanie ładowarek do aktualizowania interfejsu użytkownika nowymi danymi.
Przewodnik po świecie wątków platformy Android!
Spis treści
Przedmowa (11) 1. Komponenty systemu Android oraz potrzeba przetwarzania wieloprocesorowego (15)
- Stos programowy systemu Android (15)
- Architektura aplikacji (16)
- Aplikacja (17)
- Komponenty (17)
- Wykonywanie aplikacji (19)
- Procesy systemu Linux (19)
- Cykl życia (20)
- Strukturyzacja aplikacji w celu zwiększenia wydajności (23)
- Tworzenie aplikacji responsywnych za pomocą wątków (23)
- Podsumowanie (25)
CZĘŚĆ I. PODSTAWY (27) 2. Wielowątkowość w Javie (29)
- Podstawy wątków (29)
- Wykonywanie (29)
- Aplikacja jednowątkowa (30)
- Aplikacja wielowątkowa (31)
- Bezpieczeństwo wątków (33)
- Blokada wewnętrzna i monitor Javy (34)
- Synchronizowanie dostępu do zasobów współdzielonych (35)
- Przykład: konsument i producent (37)
- Strategie wykonywania zadań (38)
- Model wykonywania współbieżnego (39)
- Podsumowanie (40)
3. Wątki w systemie Android (41)
- Wątki aplikacji w systemie Android (41)
- Wątki interfejsu użytkownika (41)
- Wątki wiązania (42)
- Wątki w tle (42)
- Proces i wątki systemu Linux (43)
- Szeregowanie (45)
- Podsumowanie (48)
4. Komunikacja wątków (49)
- Potoki (49)
- Podstawowe zastosowanie potoków (50)
- Przykład: przetwarzanie tekstu w wątku roboczym (51)
- Pamięć współdzielona (53)
- Sygnalizacja (54)
- Interfejs BlockingQueue (55)
- Przesyłanie komunikatów w systemie Android (56)
- Przykład: podstawowe przesyłanie komunikatów (57)
- Klasy stosowane w przesyłaniu komunikatów (59)
- Komunikaty (63)
- Looper (66)
- Handler (67)
- Usuwanie komunikatów z kolejki (75)
- Obserwowanie kolejki komunikatów (76)
- Komunikacja z wątkiem interfejsu użytkownika (79)
- Podsumowanie (80)
5. Komunikacja między procesami (81)
- RPC systemu Android (81)
- Binder (82)
- Język AIDL (83)
- Synchroniczne wywołanie RPC (84)
- Asynchroniczne wywołanie RPC (86)
- Przekazywanie komunikatów za pomocą obiektu Binder (88)
- Komunikacja jednokierunkowa (89)
- Komunikacja dwukierunkowa (91)
- Podsumowanie (92)
6. Zarządzanie pamięcią (93)
- Odzyskiwanie pamięci (93)
- Wycieki pamięci związane z wątkiem (95)
- Wykonywanie wątku (96)
- Komunikacja wątków (101)
- Unikanie wycieków pamięci (103)
- Korzystanie ze statycznych klas wewnętrznych (104)
- Korzystanie ze słabych referencji (104)
- Zatrzymywanie wykonywania wątku roboczego (105)
- Zachowanie wątków roboczych (105)
- Czyszczenie kolejki komunikatów (105)
- Podsumowanie (106)
CZĘŚĆ II. TECHNIKI ASYNCHRONICZNE (107) 7. Zarządzanie cyklem życia wątku podstawowego (109)
- Podstawy (109)
- Cykl życia (109)
- Przerwania (110)
- Wyjątki nieprzechwycone (112)
- Zarządzanie wątkami (113)
- Definiowanie i uruchamianie (113)
- Retencja (115)
- Podsumowanie (120)
8. Klasa HandlerThread: wysokopoziomowy mechanizm kolejkowania (121)
- Podstawy (121)
- Cykl życia (123)
- Przypadki użycia (124)
- Powtarzające się wykonywanie zadania (124)
- Zadania powiązane (125)
- Łańcuchowanie zadań (127)
- Warunkowe wstawianie zadania (129)
- Podsumowanie (130)
9. Kontrola wykonywania wątku za pomocą frameworku wykonawcy (131)
- Interfejs Executor (131)
- Pule wątków (133)
- Predefiniowane pule wątków (134)
- Niestandardowe pule wątków (135)
- Projektowanie puli wątków (136)
- Cykl życia (139)
- Zamykanie puli wątków (140)
- Przypadki użycia i pułapki pul wątków (141)
- Zarządzanie zadaniami (143)
- Reprezentacja zadania (143)
- Zatwierdzanie zadań (144)
- Odrzucanie zadań (147)
- Klasa ExecutorCompletionService (148)
- Podsumowanie (150)
10. Wiązanie zadania w tle z wątkiem interfejsu użytkownika za pomocą klasy AsyncTask (151)
- Podstawy (151)
- Tworzenie i uruchamianie (154)
- Anulowanie (154)
- Stany (155)
- Implementacja klasy AsyncTask (156)
- Przykład: pobieranie obrazów (157)
- Wykonywanie zadania w tle (160)
- Wykonywanie globalne dla aplikacji (161)
- Wykonywanie zadań w różnych wersjach platformy (162)
- Wykonywanie niestandardowe (164)
- Alternatywy dla klasy AsyncTask (165)
- Trywialne implementacje klasy AsyncTask (165)
- Zadania w tle wymagające instancji Looper (166)
- Usługa lokalna (166)
- Korzystanie z metody execute(Runnable) (167)
- Podsumowanie (167)
11. Usługi (169)
- Dlaczego warto wykorzystać komponent Service do wykonywania asynchronicznego? (169)
- Usługi lokalne, zdalne i globalne (171)
- Tworzenie i wykonywanie (172)
- Cykl życia (173)
- Usługa uruchamiana (174)
- Implementacja metody onStartCommand (175)
- Opcje ponownego uruchamiania (176)
- Usługa kontrolowana przez użytkownika (178)
- Usługa kontrolowana przez zadanie (181)
- Usługa wiązana (183)
- Wiązanie lokalne (184)
- Wybór techniki asynchronicznej (187)
- Podsumowanie (188)
12. Klasa IntentService (189)
- Podstawy (189)
- Dobre sposoby wykorzystania klasy IntentService (190)
- Zadania uporządkowane sekwencyjnie (191)
- Wykonywanie asynchroniczne w komponencie BroadcastReceiver (193)
- Porównanie klas IntentService oraz Service (196)
- Podsumowanie (196)
13. Uzyskiwanie dostępu do klasy ContentProvider za pomocą klasy AsyncQueryHandler (197)
- Krótkie wprowadzenie do klasy ContentProvider (197)
- Uzasadnienie dla przetwarzania w tle klasy ContentProvider (199)
- Korzystanie z klasy AsyncQueryHandler (200)
- Przykład: rozszerzanie listy kontaktów (201)
- Klasa AsyncQueryHandler (204)
- Ograniczenia (205)
- Podsumowanie (205)
14. Automatyczne wykonywanie w tle za pomocą ładowarek (207)
- Framework ładowarek (208)
- Klasa LoaderManager (209)
- Interfejsy LoaderCallbacks (211)
- Klasa AsyncTaskLoader (213)
- Bezproblemowe ładowanie danych za pomocą ładowarki CursorLoader (213)
- Korzystanie z ładowarki CursorLoader (214)
- Przykład: lista kontaktów (214)
- Dodawanie obsługi operacji CRUD (215)
- Implementowanie niestandardowych ładowarek (219)
- Cykl życia ładowarki (219)
- Ładowanie w tle (220)
- Zarządzanie treścią (222)
- Dostarczanie zbuforowanych rezultatów (223)
- Przykład: niestandardowa ładowarka plików (223)
- Obsługa wielu ładowarek (226)
- Podsumowanie (227)
15. Podsumowanie: wybór techniki asynchronicznej (229)
- Zachowanie prostoty (230)
- Zarządzanie zasobami i wątkami (230)
- Wymiana komunikatów w celu uzyskania responsywności (231)
- Unikanie nieoczekiwanego zakończenia zadania (231)
- Łatwy dostęp do klasy ContentProvider (232)
A. Bibliografia (235) Skorowidz (237)
Produkty z tej samej kategorii (16)
Brak towaru
Wyświetlacz graficzny 240x128 pikseli, 144x104mm, podświetlenie (WHITE) NEGATIVE BLUE, kontroler T6963C, wbudowany generator znaków
Brak towaru
Brak towaru
Brak towaru
Magnes neodymowy prostopadłościenny o wymiarach 10x10mm i wysokości 2 mm.
Brak towaru
Brak towaru
Brak towaru
Brak towaru
Przewód sieciowy Ethernet nieekranowany UTP kategorii 5E zakończony wtykami RJ45. Lanberg PCU5-10CC-0050-B
Brak towaru
Brak towaru
Brak towaru
Brak towaru
Płytka bazowa DFRduino MEGA ADK kompatybilna z Arduino, RoHS
Brak towaru
Brak towaru
Przetwornik napięcia stałego na szerokość impulsu - zestaw do samodzielnego montażu
Brak towaru
Brak towaru