8 (905) 200-03-37 Владивосток
с 09:00 до 19:00
CHN - 1.14 руб. Сайт - 17.98 руб.

Java condurrent программирование фактическое боевое боевые программы Java Development Self -Study вход Zero Basic App Приложение для мобильной программы.

Цена: 1 241руб.    (¥69)
Артикул: 576759603053

Вес товара: ~0.7 кг. Указан усредненный вес, который может отличаться от фактического. Не включен в цену, оплачивается при получении.

Этот товар на Таобао Описание товара
Продавец:鑫达图书专营店
Рейтинг:
Всего отзывов:0
Положительных:0
Добавить в корзину
Другие товары этого продавца
¥26.9484руб.
¥591 061руб.
¥ 80 56.81 022руб.
¥ 40 38684руб.


Параметры продукта

Ява параллельный программный бой
       Ценообразование69.00
ИздательMachinery Industry Press
Версия1
Опубликованная дата2012 февраль
формат16
авторBrian Goetz
УкраситьОплата в мягкой обложке
Количество страниц293
Число слов  
Кодирование ISBN9787111370048

 


Оглавление

Слава этой книге
Переводчик
Предисловие
DY Глава введение
1.1 Пайморическая история
1.2 Преимущество потока
1.2.1. Получите полную игру к мощным возможностям мультипрессора
1.2.2 Упрощение моделирования
1.2.3 Упрощенная обработка асинхронных событий
1.2.4 Ответ на более чувствительный пользовательский интерфейс
1.3 Риск, подвергнутый потокам
1.3.1 Проблемы безопасности
1.3.2 Проблема активности
1.3.3 Проблемы с производительностью
1.4 ТИНГА ВЕЗДЕ ВЕЗДЕ
Дай некоторые базовые знания
Глава 2 Безопасность потока
2.1 Что такое безопасность потока
2.2 Атомность
2.2.1 Условия конкуренции
2.2.2 Пример: задержка конкурентных условий при инициализации
2.2.3 Композитная операция
2.3 Механизм блокировки
2.3.1 -встроенный в блокировке
2.3.2 Чтение
2.4 Заблокировать, чтобы защитить статус
2.5 активность и производительность
Глава 3 Обмен объектами
3.1 Видимо
3.1.1 Неудачные данные
3.1.2 64 -бита
3.1.3.
3.1.4 летучая переменная
3.2 Выпустите и удалите
3.3 резьба закрыта
3.3.1 Ad-Hoc Creade закрыта
3.3.2 Отходы закрыты
3.3.3 Threadlocal Class
3.4 Ninning
3.4.1 Окончательный домен
3.4.2.
3.5 Освобождение безопасности
3.5.1 Неправильный выпуск: правильный объект уничтожен
3.5.2 Неменитые объекты и безопасность инициализации
3.5.3 Общий режим безопасного выпуска
3.5.4 Факты не изменились
3.5.5 Объект переменной
3.5.6 Объекты обмена безопасностью
Глава 4 Сочетание объекта
4.1 Design Thread Safe Class
4.1.1 Сбор синхронных потребностей
4.1.2 Операция, которая зависит от статуса
4.1.3 Право собственности на государство
4.2 Случаи закрыты
4.2.1 Режим монитора Java
4.2.2 Пример: отслеживание транспортных средств
4.3 Комиссия по безопасности потока
4.3.1 Пример: трекер транспортных средств на основе комиссии
4.3.2 Независимые переменные государства
4.3.3 Когда поручение не удается
4.3.4 Отпустите основную переменную состояния
4.3.5 Пример: трекер транспортных средств для состояния выпуска
4.4 Добавить функцию в существующий класс безопасности потока
4.4.1 Механизм блокировки клиента
4.4.2 Комбинация
4.5 Файл синхронных стратегий
Глава 5 Базовый модуль строительства
5.1 Класс синхронного контейнера
5.1.1 Проблема синхронных классов контейнеров
5.1.2 Итератор и одновременная модификация Exception
5.1.3 Скрытый итератор
5.2 бумага
5.2.1 ConcurrentHashMap
5.2.2 Дополнительная операция атомной карты
5.2.3 CopyOnWriteArrayList
5.3 Блокировка очереди и режим производителя-потребитель
5.3.1 Пример: поиск на рабочем столе
5.3.2 Серийная нить закрыта
5.3.3.
5.4 Метод блокировки и метод прерывания
5.5 Синхронный класс инструментов
5.5.1 Атрезия
5.5.2 FutureTask
5.5.3 Симптомы
5.5.4 Забор
5.6 Создайте эффективный и масштабируемый кэш результатов
Вторая часть структурированного параллельного применения
ГЛАВА 6 ПОЛОЖЕНИЕ МИССИЯ
6.1 выполнить задачу в потоке
6.1.1 Серийная задача
6.1.2 Установите поток для задачи
6.1.3 Неограниченное страхование для создания потоков
6.2 Framework
6.2.1 Пример: веб -сервер на основе исполнителя
6.2.2 Стратегия выполнения
6.2.3
6.2.4 жизненный цикл исполнителя
6.2.5 Задержка задачи и задачи цикла
6.3 Узнайте доступный параллелизм
6.3.1 Пример: устройство рендеринга последовательной страницы
6.3.2 Задача переноса результатов Callable и Future
6.3.3 Пример: используйте будущее для реализации рендеринга страницы
6.3.4 Ограничения существования в параллелизации гетерогенных задач
6.3.5 Завершение конвейса: исполнитель и блокировку
6.3.6.
6.3.7 Установите ограничение по времени для задачи
6.3.8 Пример: веб -сайт портала бронирования путешествий
Глава 7 Отмените и закрыть
7.1 Отмена задач
7.1.1 прерывание
7.1.2 Стратегия прерывания
7.1.3 Прерывание ответа
7.1.4 Пример: время работы
7.1.5 Отмените до будущего
7.1.6 Обработка непрерывной обструкции
7.1.7 Используйте Newtaskfor для упаковки неэнергии
7.2 Стопковая резьба.
7.2.1 Пример: служба журнала
7.2.2 Закрыть исполнители
7.2.3&Ldquo; ядовитая таблетка”
7.2.4 Пример: выполнить службу только один раз
7.2.5 Ограничения Shutdownow
7.3 Обработка не -няморного прекращения потока
7.4 JVM закрыт
7.4.1 Закройте крючок
7.4.2 Тема Guardian
7.4.3 Терминал
Глава 8 Использование пула потоков
8.1 Скрытая связь между задачей и стратегией выполнения
8.1.1. Голод и замок смерти.
8.1.2 Задача в течение длительного времени
8.2 Установите размер пула потоков
8.3 Настройте ThreadPoolexeCutor
8.3.1 Создание и разрушение нитей
8.3.2 Задача очереди управления
8.3.3 Стратегия насыщения
8.3.4 Фабрика потока
8.3.5 После вызова конструктора настройка ThreadPoolexeCutor
8.4 Расширение ThreadPoolexeCutor
8.5 Параллелизация рекурсивных алгоритмов
Глава 9 Приложение графического интерфейса пользователя
9.1 Почему графический интерфейс - один поток
9.1.1 Обработка последовательных событий
9.1.2 Закрытый механизм резьбы при качелях
9.2 Короткое задание графического интерфейса
9.3 Длительная миссия с графическим интерфейсом
9.3.1 Отмена
9.3.2 Логотип прогрессивной идентификации и завершения
9.3.3 SwingWorker
9.4 Модель передачи данных
9.4.1 Модель безопасных данных потока
9.4.2 Модель данных разложения
9.5 Другие формы однопользованных подсистем
Третья часть активности, производительности и теста
Dy 0, чтобы избежать активной опасности
10.1 мертвый замок
10.1.1 Dead Lock Sequence Sequence
10.1.2 Dynamic Bock Order Dead Lock
10.1.3 тупик, который происходит между совместными объектами
10.1.4 Открытый вызов
10.1.5 Dead Lock Resource
10.2 Избегание и диагностика мертвых замков
10.2.1.
10.2.2 Анализ мертвых замков через информацию о дампе потока
10.3 Другие активные опасности
10.3.1 Голод
10.3.2 Плохой ответ
10.3.3 Live Lock
DY 1 Главы Производительность и извлечение
11.1 Размышление о производительности
11.1.1 Производительность и масштабируемость
11.1.2 Оценка различных факторов взвешивания производительности
11.2 Амдаль закон
11.2.1 Пример: последовательная часть, спрятанная в различных рамках
11.2.2 Применение закона Amdahl
11.3 Серминация введенных потоков
11.3.1 Контекст переключения
11.3.2 Синхронизация памяти
11.3.3 закупорка
11.4 Уменьшите конкуренцию замков
11.4.1 Объем сужения замка (“&rdquo)
11.4.2 Уменьшите размер частиц блокировки
11.4.3 Сегмент блокировки
11.4.4 Избегайте горячих точек
11.4.5 Некоторые альтернативные монопольные замки
11.4.6. Мониторинг использования ЦП
11.4.7 Скажи в пул объектов&LDQUO”
11.5 Пример: сравните производительность карты
11.6 Уменьшите накладные расходы на переключение контекста
DY 2 Глава тест бумажной программы
12.1 Правильный тест
12.1.1 Основной модульный тест
12.1.2 Тест на блокирующие операции
12.1.3 Тест безопасности
12.1.4 Тест управления ресурсами
12.1.5 Использование обратных вызовов
12.1.6. Создайте больше альтернативных операций
12.2 Тест производительности
12.2.1 Добавить функцию времени в Puttaketest
12.2.2 Сравнение множественных алгоритмов
12.2.3 Измерение ответа
12.3 Избегайте ловушки тестирования производительности
12.3.1 переработка мусора
12.3.2 Динамическая компиляция
12.3.3 Нереальная выборка пути кода
12.3.4 нереальная конкуренция
12.3.5 Устранение бесполезного кода
12.4 Другие методы испытаний
12.4.1 Обзор кода
12.4.2 Инструменты статического анализа
12.4.3. Технология тестирования для аспектов
12.4.4 Инструменты анализа и мониторинга
Часть 4 продвинутая тема
DY 3 ГЛАВА явная блокировка
13.1 Lock and Reentrantlock
13.1.1 кольцо круглая блокировка и замок на временах
13.1.2
13.1.3 замки не блокировки
13.2 Соображения производительности
13.3 Справедливость
13.4 Выбор между синхронизированным и повторным
13.5 Читающая записка блокировки
DY 4 Глава Создание инструмента индивидуального синхронизации
14.1 Управление зависимостью от статуса
14.1.1 Пример: передать сбой необходимого условия абоненту
14.1.2 Пример: реализовать простое блокирование через вращение и покое
14.1.3 Очередь условия
14.2 Использовать очередь
14.2.1 Состояние предикаты слов
14.2.2 Просыпайтесь преждевременно
14.2.3 Потерянный сигнал
14.2.4 Уведомление
14.2.5 Пример: клапанный класс
14.2.6 Проблемы безопасности
14.2.7 Очередь условий упаковки
14.2.8.
14.3 Экспрессия объекта условия
14.4 Анализ синхронизатора
14.5 AbstractQueuedSynchronizer
14.6 java.util.concurrent Synchronizer Class AQS
14.6.1 ReentrantLock
14.6.2 Semaphore и Countdownlatch
14.6.3 FutureTask
14.6.4 ReentrantReadWriteLock
DY 5 ГЛАВА АТОМИЧЕСКИЕ ПЕРЕМЕННЫ
15.1 Недостаток замков
15.2 Поддержка оборудования оборудования
15.2.1 Сравнение и обмен
15.2.2 не -блокирующее счетчик
15.2.3 поддержка JVM для CAS
15.3 Класс атомной переменной
15.3.1 Атомные переменные - одна“”
15.3.2 Сравнение производительности: блокировка и атомные переменные
15.4 не -блокирующий алгоритм
15.4.1 не -блокирующий стек
15.4.2 Не -блокирующий связанный список
15.4.3
15.4.4 Проблема ABA
DY 6 Глава модель памяти Java
16.1 Что такое модель памяти и зачем она ей нужна
16.1.1 Модель памяти платформы
16.1.2 Сортировка тяжелой сортировки
16.1.3 Введение модели памяти Java
16.1.4 Принимая синхронизацию
16.2 Опубликовано
16.2.1 Небезопасное выпуск
16.2.2 Опубликовано безопасно
16.2.3 Режим инициализации безопасности
16.2.4
16.3 Безопасность во время инициализации
Приложение a одновременная маркировка
Рекомендации

Введение

DY 6 Session Jolt Awards Книга номинации

Конференция Javaone*Лучшая книга

Узнайте одновременное программирование Java и чтение шедевров

Эта книга в простых способах представляет Java Thread и Antrunlurence, которое является идеальным справочным руководством по параллелизму Java.Начиная с базовой концепции одновременной безопасности и безопасности потоков в книге, книга представляет, как использовать основную одновременную структуру, предоставленную библиотекой классов, чтобы избежать правил избежания опасности одновременных, построенных потоков и проверки потоков. Комбинация класса безопасности в более крупные категории безопасности потока, как использовать потоки для увеличения пропускной способности одновременных приложений, как определить задачи, которые можно выполнять параллельно, как улучшить отклик единой подсистемы, как обеспечить ожидаемую задачу одновременных программ, как выполнить ожидаемую задачу, как выполнить производительность одновременного кода и телескопа, а затем представить некоторые продвинутые темы, такие как явные замки, атомные переменные, не -блокирующие алгоритмы и как разработать пользовательские Синхронные инструменты.

Эта книга подходит для чтения разработчиков программы Java.


об авторе

Автор этой книги является основным членом программы Java Community Process JSR 166 Expert Group (параллельный инструмент) и обслуживался во многих других экспертных группах JCP.Брайан Гетц имеет более чем 20 -летний опыт работы в области консалтинга программного обеспечения и имеет не менее 75 статей о разработке Java.Тим Пеоплс есть“&Rdquo;Джозеф Боубер - эксперт по Java ME.Дэвид Холмс -соавтор книги «Язык программирования Java» и работает для Sun Company.Джошуа Блок является главным архитектором Google Java, автором «Эффективной Java», и участвовал в книге «Загадки Java».Даг Ли является автором «одновременного программирования» и профессором компьютерных наук в Освего, Университет штата Нью -Йорк.