Потоки являются фундаментальной частью платформы Java. Многоядерные процессоры - это обыденная реальность, а эффективное использование параллелизма стало необходимым для создания любого высокопроизводительного приложения. Улучшенная виртуальная машина Java, поддержка высокопроизводительных классов и богатый набор строительных блоков для задач распараллеливания стали в свое время прорывом в разработке параллельных приложений. В "Java Concurrency на практике" сами создатели прорывной технологии объясняют не только принципы работы, но и рассказывают о паттернах проектирования.Легко создать конкурентную программу, которая вроде бы будет работать. Однако разработка, тестирование и отладка многопоточных программ доставляют много проблем. Код перестает работать именно тогда, как это важнее всего: при большой нагрузке. В "Java Concurrency на практике" вы найдете как теорию, так и конкретные методы создания надежных, масштабируемых и поддерживаемых параллельных приложений. Авторы не предлагают перечень API и механизмов параллелизма, они знакомят с правилами проектирования, паттернами и моделями, которые не зависят от версии Java и на протяжении многих лет остаются актуальными и эффективными. Эта книга охватывает следующие темы:* Базовые концепции параллелизма и безопасности потоков* Методы построения и составления многопоточных классов* Использование блоков параллелизма в java.util.concurrent* Оптимизация производительности: что можно делать, а что не стоит и пытаться* Тестирование параллельных программ* Атомарные переменные, неблокирующие алгоритмы и модель памяти Java
Potoki javljajutsja fundamentalnoj chastju platformy Java. Mnogojadernye protsessory - eto obydennaja realnost, a effektivnoe ispolzovanie parallelizma stalo neobkhodimym dlja sozdanija ljubogo vysokoproizvoditelnogo prilozhenija. Uluchshennaja virtualnaja mashina Java, podderzhka vysokoproizvoditelnykh klassov i bogatyj nabor stroitelnykh blokov dlja zadach rasparallelivanija stali v svoe vremja proryvom v razrabotke parallelnykh prilozhenij. V "Java Concurrency na praktike" sami sozdateli proryvnoj tekhnologii objasnjajut ne tolko printsipy raboty, no i rasskazyvajut o patternakh proektirovanija.Legko sozdat konkurentnuju programmu, kotoraja vrode by budet rabotat. Odnako razrabotka, testirovanie i otladka mnogopotochnykh programm dostavljajut mnogo problem. Kod perestaet rabotat imenno togda, kak eto vazhnee vsego: pri bolshoj nagruzke. V "Java Concurrency na praktike" vy najdete kak teoriju, tak i konkretnye metody sozdanija nadezhnykh, masshtabiruemykh i podderzhivaemykh parallelnykh prilozhenij. Avtory ne predlagajut perechen API i mekhanizmov parallelizma, oni znakomjat s pravilami proektirovanija, patternami i modeljami, kotorye ne zavisjat ot versii Java i na protjazhenii mnogikh let ostajutsja aktualnymi i effektivnymi. Eta kniga okhvatyvaet sledujuschie temy:* Bazovye kontseptsii parallelizma i bezopasnosti potokov* Metody postroenija i sostavlenija mnogopotochnykh klassov* Ispolzovanie blokov parallelizma v java.util.concurrent* Optimizatsija proizvoditelnosti: chto mozhno delat, a chto ne stoit i pytatsja* Testirovanie parallelnykh programm* Atomarnye peremennye, neblokirujuschie algoritmy i model pamjati Java