Facebook - konwersja
  • promocja

Programowanie równoległe i asynchroniczne w C# 5.0 - ebook

Wydawnictwo:
Data wydania:
22 listopada 2013
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.

Programowanie równoległe i asynchroniczne w C# 5.0 - ebook

Programowanie współbieżne - wykorzystaj w pełni moc procesorów!

  • Opanuj wątki, zadania i TPL
  • Poznaj sprytne rozwiązania z użyciem bibliotek DSS i CCR
  • Wejdź na wyższy poziom z Reactive Extensions i CUDAfy.NET

Programowanie współbieżne jest w dzisiejszych czasach absolutnym standardem, jedyną drogą pozwalającą w pełni wykorzystać moc wielordzeniowych procesorów, umieszczanych we współczesnych komputerach. Jednak nadal niewielu programistów potrafi poprawnie i efektywnie korzystać z tej technologii. Czas to zmienić!

Jeśli chcesz być naprawdę świetnym programistą C#, tworzącym aplikacje na platformę .NET, a do tej pory nie przestudiowałeś jeszcze porządnie kwestii współbieżności, pora to nadrobić. W tej książce znajdziesz informacje o podstawach tej technologii, takich jak wątki, a także o klasycznych pułapkach związanych z programowaniem współbieżnym. Kolejne rozdziały odkryją przed Tobą tajemnice zadań oraz bibliotek TPL. Poznasz również technologie DSS i CCR oraz dowiesz się co nieco na temat asynchroniczności. Potem przyjdzie kolej na omówienie technologii Reactive Extensions oraz biblioteki CUDAfy.NET, pozwalającej efektywnie wykorzystać karty graficzne do obliczeń niezwiązanych z grafiką. Odkryj zalety programowania równoległego!

  • Dla niecierpliwych: asynchroniczność i pętla równoległa
  • Wątki i zadania
  • Zmienne w aplikacjach wielowątkowych
  • Synchronizacja wątków, zadań i kontrolek interfejsu z zadaniami
  • Wątki i zadania a interfejs użytkownika
  • Dane w programach równoległych
  • Analiza aplikacji wielowątkowych. Debugowanie i profilowanie
  • Wstęp do CCR i DSS
  • Skalowalne rozwiązanie dla systemów rozproszonych na bazie technologii CCR i DSS
  • Wprowadzenie do Reactive Extensions. Zarządzanie sekwencjami zdarzeń
  • Współbieżność w Rx
  • Przykłady użycia technologii Rx w aplikacjach WPF
  • CUDA w .NET
  • Biblioteka TPL w WinRT
  • Dobre praktyki programowania aplikacji wielowątkowych

Zostań mistrzem programowania współbieżnego!

Spis treści

Wstęp (9)

Przedmowa (11)

Rozdział 1. Dla niecierpliwych: asynchroniczność i pętla równoległa (13)

  • Programowanie asynchroniczne. Operator await i modyfikator async (nowość języka C# 5.0 i platformy .NET 4.5) (13)
  • Klasa Parallel z biblioteki TPL (nowość platformy .NET 4.0) (19)
    • Równoległa pętla For (20)
    • Przerywanie pętli (22)

Rozdział 2. Wątki (25)

  • Monte Carlo (25)
  • Obliczenia bez użycia dodatkowych wątków (26)
  • Przeniesienie obliczeń do osobnego wątku (28)
  • Wątki, procesy i domeny aplikacji (30)
  • Usypianie bieżącego wątku (31)
  • Przerywanie działania wątku (Abort) (32)
  • Wstrzymywanie i wznawiane działania wątku (34)
  • Wątki działające w tle (35)
  • Zmiana priorytetu wątku (36)
  • Użycie wielu wątków i problemy z generatorem liczb pseudolosowych (36)
  • Pamięć lokalna wątku i bezpieczeństwo wątku (39)
  • Czekanie na ukończenie pracy wątku (Join) (40)
  • Sekcje krytyczne (lock) (43)
  • Przesyłanie danych do wątku (45)
  • Pula wątków (47)
  • Jeszcze raz o sygnalizacji zakończenia pracy wątków (50)
  • Operacje atomowe (51)
  • Tworzenie wątków za pomocą System.Threading. Timer i imitacja timera w wątku z wysokim priorytetem (54)
  • Zadania (57)

Rozdział 3. Zmienne w aplikacjach wielowątkowych (59)

  • Atrybut ThreadStatic (59)
  • Opóźniona inicjacja i zmienne lokalne wątku (60)
  • Volatile (64)
  • Zadania (65)

Rozdział 4. Więcej o synchronizacji wątków. Blokady i sygnały (67)

  • Problem ucztujących filozofów (68)
  • Problem czytelników i pisarzy (73)
  • Komunikacja między wątkami. Problem producenta i konsumenta (78)
  • Sygnalizacja za pomocą metod Monitor.Pulse i Monitor.Wait (81)
  • EventWaitHandle i AutoResetEvent (85)
  • Bariera (86)
  • Synchronizacja wątków z różnych procesów. Muteksy i semafory nazwane (88)
    • Kontrola ilości instancji aplikacji (89)
    • Mutex (89)
    • Semafor (91)
  • Zadania (93)

Rozdział 5. Wątki a interfejs użytkownika (95)

  • Wątki robocze w aplikacjach desktopowych (95)
    • Przygotowanie projektu aplikacji oraz danych wejściowych (96)
    • Wykorzystanie wątków w długotrwałych metodach zdarzeniowych (99)
  • Synchronizacja wątków z interfejsem użytkownika w aplikacjach Windows Forms (104)
  • BackgroundWorker (110)
  • Synchronizacja wątków z komponentami Windows Presentation Foundation (114)
    • Projekt graficznego interfejsu użytkownika (115)
    • Implementacja metod zdarzeniowych (117)
    • Bezpieczny dostęp do kontrolek WPF (125)
  • Kontekst synchronizacji (128)
  • Groźba zagłodzenia wątku interfejsu i asynchroniczna zmiana stanu współdzielonych zasobów (135)
  • Zadania (136)

Rozdział 6. Zadania (137)

  • Tworzenie zadania (137)
  • Praca z zadaniami (138)
  • Dane przekazywane do zadań (140)
  • Dane zwracane przez zadania (141)
  • Przykład: test liczby pierwszej (141)
  • Synchronizacja zadań (143)
  • Przykład: sztafeta zadań (144)
  • Przerywanie zadań (145)
  • Stan zadania (149)
  • Fabryka zadań (152)
  • Planista i zarządzanie kolejkowaniem zadań (155)
  • Ustawienia zadań (159)
  • Zadania (160)

Rozdział 7. Klasa Parallel. Zrównoleglanie pętli (161)

  • Równoległa pętla for (162)
  • Równoległa pętla foreach (163)
  • Metoda Invoke (164)
  • Ustawienia pętli równoległych. Klasa ParallelOptions (166)
  • Przerywanie pętli za pomocą CancelationToken (166)
  • Kontrola wykonywania pętli (168)
  • Synchronizacja pętli równoległych. Obliczanie ? metodą Monte Carlo (169)
  • Partycjonowanie danych (175)
  • Zadania (177)

Rozdział 8. Synchronizacja zadań (179)

  • Blokady (lock) (179)
  • Sygnały (Monitor.Pulse i Monitor.Wait) (182)
  • Bariera (184)

Rozdział 9. Dane w programach równoległych (187)

  • Praca ze zbiorami danych w programowaniu równoległym (187)
    • Współbieżne struktury danych (187)
    • Kolekcja ConcurrentBag (189)
    • Współbieżne kolejka i stos (189)
    • Praca z BlockingCollection (190)
    • Własna kolekcja współbieżna (193)
    • Agregacja (197)
    • Agregacje dla kolekcji równoległych (199)
  • PLINQ - zrównoleglone zapytania LINQ (203)
    • Przykład zapytania PLINQ (204)
    • Jak działa PLINQ? (205)
    • Kiedy PLINQ jest wydajne? (207)
    • Metody przekształcające dane wynikowe (208)
    • Przerywanie zapytań (209)
    • Metoda ForAll (212)
  • Zadania (213)

Rozdział 10. Synchronizacja kontrolek interfejsu z zadaniami (215)

  • Zadania w aplikacjach Windows Forms (215)
  • Zadania w aplikacjach WPF (219)
  • Aktualizacja interfejsu z wykorzystaniem operatora await (221)
  • Zadania (223)

Rozdział 11. Analiza aplikacji wielowątkowych. Debugowanie i profilowanie (225)

  • Okno wątków (Threads) (226)
  • Okno zadań równoległych (Parallel Tasks) (228)
  • Okno stosów równoległych (Parallel Stacks) (229)
  • Okno równoległego śledzenia zmiennych (Parallel Watch) (230)
  • Concurrency Visualizer (232)
    • Widok Wykorzystanie CPU (232)
    • Widok Wątki (233)
    • Widok Rdzenie (236)
    • Profilowanie aplikacji zewnętrznych (237)
    • Znaczniki (238)
  • Zadania (241)

Rozdział 12. Wstęp do CCR i DSS (243)

  • Instalacja środowiska Microsoft Robotics (245)
    • Możliwe problemy z uruchomieniem środowiska Robotics (247)
    • Kompilacja i uruchamianie projektów dołączonych do książki (248)
  • CCR i DSS w pigułce (249)
    • Czujniki i urządzenia - tworzenie pierwszej usługi (249)
    • Serwisy partnerskie (265)

Rozdział 13. Skalowalne rozwiązanie dla systemów rozproszonych na bazie technologii CCR i DSS (277)

  • Opóźnione uruchamianie (291)
  • Uruchamianie obliczeń na klastrze (293)
  • Podsumowanie (298)
  • Zadania (299)

Rozdział 14. Wprowadzenie do Reactive Extensions. Zarządzanie sekwencjami zdarzeń (301)

  • Programowanie reaktywne (302)
    • IObservable<T> (303)
    • IObserver<T> (303)
    • Dualizm interaktywno-reaktywny (304)
    • Obserwator - wzorzec projektowy (305)
  • Platforma Rx (306)
    • Biblioteki Rx (307)
  • Gramatyka Rx (309)
    • Jak korzystać z interfejsów w Rx? (309)
    • Subskrypcje (312)
    • LINQ do zdarzeń (315)
  • Zimne i gorące obserwable (329)

Rozdział 15. Współbieżność w Rx (333)

  • Zarządzanie równoległością (333)
    • Interfejs IScheduler (334)
    • Planiści (335)
    • Metody SubscribeOn i ObserveOn (339)
    • Słowo o unifikacji (343)

Rozdział 16. Przykłady użycia technologii Rx w aplikacjach WPF (345)

  • Rysowanie z użyciem Rx (346)
  • Wyszukiwarka (353)

Rozdział 17. CUDA w .NET (365)

  • Konfiguracja środowiska dla CUDAfy.NET (366)
  • Pierwsze kroki (368)
  • Hello World, czyli pierwszy program CUDAfy.NET (370)
  • Emulator GPU (375)
  • Własności GPU (376)
  • Przekazywanie parametrów do kerneli (378)
  • Operacje na pamięci globalnej karty graficznej (380)
  • Pomiar czasu wykonania (383)
  • Dostęp zwarty do pamięci globalnej i pamięć współdzielona (386)
  • Generator liczb pseudolosowych (390)
  • FFT na GPU (392)
  • BLAS (394)
  • Zadania (395)

Dodatek A. Biblioteka TPL w WinRT (397)

  • Zadania (398)
  • Struktura SpinWait (400)
  • Usypianie wątków (400)
  • Pula wątków (401)
  • ThreadPoolTimer (402)
  • Podobieństwa (403)
  • Przenośna biblioteka (404)
  • Zadania (406)

Dodatek B. Dobre praktyki programowania aplikacji wielowątkowych (407)

  • Wprowadzenie (407)
  • Sekcje krytyczne i zakleszczenia (407)
  • Wyścig (411)
  • Słowo kluczowe volatile i kontrola pętli wykonywanej w ramach funkcji wątku (417)
  • Bezpieczeństwo wątków a konstruktory i pola statyczne (419)

Dodatek C. Menadżer pakietów NuGet (423)

  • Instalacja NuGet (423)
  • Korzystanie z NuGet (425)

Skorowidz (427)

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-246-8905-7
Rozmiar pliku: 9,0 MB

BESTSELLERY

Kategorie: