Подлинная иллюстрация Java MultheThreaded Design Mode Jiecheng Hao Java Design модель модели Java Multi -Threaded и Coprurrent Technology Книга технологии обработки легко изучать многопоточное программирование

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

Эта книга объясняет 12 шаблонов дизайна, обычно используемых в многочисленной и одновременной обработке с помощью конкретных программ Java.Содержание включает в себя базовые знания потока, начало и завершение потоков, взаимоисключающая обработка и сотрудничество между потоками, эффективное применение потоков, количество управления потоками и меры предосторожности оптимизации производительности.Кроме того, некоторые ошибки, которые склонны происходить во время многочисленного программирования, а также навыки чтения многочисленной программы.Во время процесса объяснения не только текст и теория объединяют пример, но также предоставляют практикующие вопросы и ответы для решения конкретных проблем в режиме, помогая читателям углубить понимание многочисленной и одновременной обработки и освоить их навыки использования Полем

Пролог 1Джава1
I1.1Джава2
I1.2Что такое теме2
Это процесс отслеживания, но это поток отслеживания2
Однопоточная программа3
Многопоточная программа4
Запустите метод и метод начала класса потока5
I1.3Запуск потока9
Начало потока (1)—— Используйте подклассы класса потоков9
Начало потока (2)——10
I1.4Поток пауза12
I1.5Обработка взаимного исключения нит13
Синхронизированный метод14
Синхронизированный кодовый блок17
I1.6Сотрудничество18
Подождите очередь——19
Метод ожидания——19
Уведомить метод——21
Метод уведомления——23
Подождите, уведомлять, уведомлять - это методы классов объектов24
I1.7Государственная миграция нитей24
I1.8Другие темы, связанные с потоком26
I1.9Знание, изученные в этой главе26
I1.10Вопрос упражнения26
Программа 2Критерии оценки для многопоточных программ31
I2.1Критерии оценки для многопоточных программ32
безопасность——32
Выживание——32
Репликация——33
производительность——33
Сводка критериев оценки33
I2.2Знание, изученные в этой главе34
I2.3Вопрос упражнения34
Глава ОдинОднополосный режим выполнения——35
1.1Однополосный режим выполнения36
1.2Пример Программы 1: Программы, которые не используют режим выполнения однопоток36
Основной класс37
НЕТПРЕЗАТЕЛЬНЫЙ КЛАСС37
Пользовательский класс38
Взгляните на это…&Хеллип;39
Почему что -то пошло не так40
1.3Пример программы 2: Программы с использованием режима выполнения однопоток41
Класс защитников резьбы41
Роль синхронизированного42
1.4Слушайте роли в режиме выполнения с одним потоком43
1.5Ключевые моменты для расширения идей44
Когда использовать (можно использовать режим выполнения с одним резьбом)44
Выживание и тупик45
Аномалии повторного использования и наследства46
Размер и производительность критических зон46
1.6Связанные шаблоны дизайна47
Охраняемый режим подвески47
Режим блокировки чтения-записи47
Необычный режим47
Режим хранения специфического потока48
1.7Дальнейшее чтение 1: о синхронизированном48
синхронизированный синтаксис и до/после режима48
Что такое синхронизированное защиту49
Какую единицу следует использовать для его защиты?50
Который блокирует, чтобы защитить, используя50
Атомная операция51
Операции длинных и двойных не являются атомными51
1.8Дополнительное чтение 2: java.util.concurrent Package и считать Semaphore52
Считайте семафоры и семафоры классы52
Пример программы с использованием класса Semaphore52
1.9Знание, изученные в этой главе55
1.10Вопрос упражнения55
Глава 2Необычный режим——61
2.1Необычный режим62
2.2Пример программы62
Класс человека с использованием неизменной картины62
Основной класс63
PrintPersonThread Class63
2.3Слушать роли в неизменном режиме65
2.4Ключевые моменты для расширения идей66
Когда использовать (может быть использован неподвижный режим)66
Рассмотрим парные измененные классы и неизменные классы [производительность]66
Для обеспечения неизменности [повторного использования]67
Необычный режим, используемый в стандартной библиотеке классов67
2.5Связанные шаблоны дизайна69
Однополосный режим выполнения69
Режим блокировки чтения-записи69
Режим втянутого веса69
2.6Дальнейшее чтение 1: финал69
Значение окончательного69
2.7Дополнительное чтение 2: классы сбора и многопоточный71
Пример 1: Неподохой java.util.arraylist Class71
Пример 2: Синхронизация с использованием метода Collections.synchronizedList74
Пример 3: java.util.concurrent.copyonwritearraylist class с использованием копирования на записи75
2.8Знание, изученные в этой главе76
2.9Вопрос упражнения77
Глава 3Охраняемый режим подвески——81
3.1Охраняемый режим подвески82
3.2Пример программы82
Запросить класс83
RequestQueue Class84
ClientThread Class85
Серверный класс85
Основной класс86
Операции java.util.queue и java.util.linkedlist87
GetRequest Детали87
подробные детали89
Значение синхронизированного89
Подождите и заблокируйте89
3.3Охраняемые подвесные роли90
3.4Ключевые моменты для расширения идей91
Синхронизированный с дополнительными условиями91
Многопоточная версия if91
Забыл изменить состояние и выживание91
Ответственность за ожидание и уведомление/уведомление [повторное использование]91
Различные названия91
Пример программы с использованием java.util.concurrent.linkedblockingqueue93
3.5Связанные шаблоны дизайна94
Однополосный режим выполнения94
Режим балансировки94
Режим продюсера-потребителя94
Будущий режим94
3.6Знание, изученные в этой главе95
3.7Вопрос упражнения95
Глава 4Режим балансировки——99
4.1Режим балансировки100
4.2Пример программы100
Класс данных100
Saverthread Class102
Чант -чтение класса102
Основной класс103
4.3Роли в режиме балансировки105
4.4Ключевые моменты для расширения идей106
Когда использовать (можно использовать режим бабения)106
Как представить результат утра107
4.5Связанные шаблоны дизайна107
Охраняемый режим подвески107
Режим наблюдателя107
4.6Дальнейшее чтение: тайм -аут108
Между режимом балансировки и охраняемым режимом подвески108
Когда подождите конец108
Внедрение охраняемого времени (с помощью ожидания)109
Там нет тайм -аута в синхронизированном и не может быть прерван110
Тайм -аут в java.util.concurrent111
4.7 Знание, изученные в этой главе111
4.8 练习题112
Глава 5Режим продюсера-потребителя——115
5.1Режим продюсера-потребителя116
5.2Пример программы116
Основной класс116
Makerthread Class117
Eaterthread class118
Табличный класс118
Интерпретация метода пута120
Интерпретация метода принятия121
5.3Появляется режим производителя-потребителя122
5.4Ключевые моменты для расширения идей123
Роль канала, которая защищает безопасность (повторно использование)123
Разве вы не можете передать это напрямую?124
Проблемы, вызванные оставшимся пространством персонажа канала124
В каком порядке передаются символы данных125
“&Значение rdquo;125
Что происходит, когда есть только один потребительский персонаж126
5.5Связанные шаблоны дизайна126
Режим медиатора126
Режим рабочей потока126
Командный режим126
Стратегический режим127
5.6Дополнительное чтение 1: Понимание прерванного127
Это может занять время, но может быть отменено127
Добавленные броски прерывают метод реагирования127
Метод сна и метод прерывания128
Метод ожидания и метод прерывания128
Метод соединения и метод прерывания129
Метод прерывания просто изменяет состояние прерывания129
является беспрепятственным методом——130
Thread. Метод——130
Метод остановки класса потока не может быть использован130
5.7Дополнительное чтение 2: java.util.concurrent пакета и узор продюсера-потребителя131
Очередь в пакете java.util.concurrent131
Пример программы с использованием java.util.concurrent.arrayblockingqueue132
Смена буферов с использованием java.util.concurrent.exchanger Class133
5.8Знание, изученные в этой главе136
5.9Вопрос упражнения137
Глава 6Режим блокировки чтения-записи——141
6.1Режим блокировки чтения-записи142
6.2Пример программы142
Основной класс143
Класс данных143
Писательский класс146
Класс читателей146
Readwritelock class147
Взгляните на это149
Подтверждение условий защиты150
6.3Появится режим блокировки чтения-записи151
6.4Ключевые моменты для расширения идей153
воспользоваться“ читать” нет конфликта между потоками операции для повышения производительности программы153
Подходит для тяжелых операций чтения153
Подходит для частоты чтения, когда она выше, чем частота написания153
Значение блокировки153
6.5Связанные шаблоны дизайна154
Необычный режим154
Однополосный режим выполнения154
Охраняемый режим подвески154
До/после режима154
Стратегированный режим блокировки154
6.6Дополнительное чтение: java.util.concurrent.locks Пакет и режим блокировки чтения-записи154
java.util.concurrent.locks154
Пример программы с использованием java.util.concurrent.locks155
6.7Знание, изученные в этой главе156
6.8Вопрос упражнения157
Глава 7Режим потока в зал——163
7.1Режим потока в зал164
7.2Пример программы164
Основной класс164
Класс хоста165
Помощник класса166
7.3Роли в режиме потока за Message168
7.4Ключевые моменты для расширения идей169
Улучшить отзывчивость и сократить время задержки169
Применимо, когда нет необходимости для последовательности операции169
Применимо, когда возвращаемое значение не требуется169
Применить к серверу169
Вызов метод + запуск потока&Рарр;170
7.5Связанные шаблоны дизайна170
Будущий режим170
Режим рабочей потока170
7.6Дополнительное чтение 1: процессы и потоки171
7.7Дополнительное чтение 2: java.util.concurrent пакет и шаблон потока за полуосредством171
Java.lang.thread Class171
java.lang.runnable интерфейс172
java.util.concurrent.treadfactory Interface173
ThreatFactory, полученный java.util.concurrent.executors Class174
java.util.concurrent.executor interface175
java.util.concurrent.executorservice интерфейс176
java.util.concurrent.schedudexecutorservice Class177
Подведем итог178
7.8Знание, изученные в этой главе180
7.9Вопрос упражнения180
Глава 8Режим рабочей потока——187
8.1Режим рабочей потока188
8.2Пример программы188
Основной класс189
ClientThread Class190
Запросить класс190
Канал класс191
Класс Workerthread192
8.3Роли в режиме рабочей потока193
8.4Ключевые моменты для расширения идей195
Улучшить пропускную способность195
Контроль емкости195
Разделение вызова и исполнения196
Значение запускаемого интерфейса197
Полиморфная роль запроса198
Роль работника в одиночку199
8.5Связанные шаблоны дизайна199
Режим продюсера-потребителя199
Режим потока в зал199
Командный режим199
Будущий режим199
Режим втянутого веса199
Режим хранения специфического потока200
Активный режим OJBECT200
8.6Дополнительное чтение 1: потока распределения событий Swing200
Что такое потока распределения событий200
Есть только один поток распределения событий200
Поток распределения событий вызывает слушателя201
Значение регистрации слушателя201
Поток распределения событий также отвечает за рисование интерфейса201
javax.swing.swingtilities Class202
Однопользованные правила Swing203
8.7Дополнительное чтение 2: java.util.concurrent пакет и режим потока рабочей нити204
ThreadPoolexecutor Class204
Создать пулы потоков через java.util.concurrent пакет205
8.8Знание, изученные в этой главе207
8.9Вопрос упражнения208
Глава 9Будущий режим——211
9.1Будущий режим212
9.2Пример программы212
Основной класс214
Класс хоста214
Интерфейс данных215
Futuredata Class216
Класс Realdata217
9.3Роли в будущем режиме218
9.4Ключевые моменты для расширения идей219
Будет ли увеличение пропускной способности?219
Асинхронный метод вызов“”220
“&rdquo“” разделение rdquo;220
вариант——220
вариант——221
Кто будет заботиться о многопотоке?“”221
Обратный вызов и будущий режим221
9.5Связанные шаблоны дизайна222
Режим потока в зал222
Режим строителя222
Прокси -режим222
Охраняемый режим подвески222
Режим балансировки222
9.6Дополнительное чтение: java.util.concurrent Package и Future Pattern222
java.util.concurrent Package222
Пример программы с использованием пакета Java.util.concurrent223
9.7Знание, изученные в этой главе226
9.8Вопрос упражнения226
Глава 1Двухфазный режим завершения——231
10.1Двухфазный режим завершения232
10.2Пример программы233
Countupthread Class234
Основной класс236
10.3Появляется двухфазный режим завершения237
10.4Ключевые моменты для расширения идей238
Не может использовать метод остановки класса потока238
Просто проверить знак недостаточно239
Просто проверить состояние прерывания недостаточно239
Проверьте запрос на завершение до долгой обработки239
Метод соединения и метод ISALIVE240
java.util.concurrent.executorservice и двухфазный режим завершения240
Чтобы захватить прекращение всей программы241
Элегантно заканчивают потоки243
10.5Связанные шаблоны дизайна243
До/после режима243
Режим многофазного отмены243
Многофазный режим запуска244
Режим балансировки244
10.6Дополнительное чтение 1: обмен между прерванным состоянием и исключением прерванного244
Состояние прерывания→ исключение прерывания244
Переплетеное аномалия&Рарр;245
Переплетеное аномалия→ исключение прерывания245
10.7Дополнительное чтение 2: java.util.concurrent пакет синхронизируется с потоками246
java.util.concurrent.countdownlatch Class246
java.util.concurrent.cyclicbarrier Class249
10.8Знание, изученные в этой главе253
10.9Вопрос упражнения253
Глава 1Режим хранения специфического потока——263
11.1Режим хранения специфического потока264
11.2О Java.Lang.Threadlocal Class264
java.lang.threadlocal - это место для хранения264
java.lang.threadlocal и дженерики265
11.3Пример программы 1: Пример без использования режима хранения специфического потока265
Log Class266
Основной класс266
11.4Пример программы 2: Пример с использованием режима хранения специфичных для потока267
Специфичный для потока класс TSLOG268
Log Class269
ClientThread Class270
Основной класс271
11.5Листинг ролей в режиме хранения специфичных для потока272
11.6Ключевые моменты для расширения идей274
Локальные переменные и java.lang.threadlocal class274
Где сохранить информацию, специфичную для потока275
Не беспокойтесь о другом доступе к потоке275
Улучшение пропускной способности очень процедурно зависит от метода реализации276
Опасность контекста276
11.7Связанные шаблоны дизайна277
Синглтон режим277
Режим рабочей потока277
Однополосный режим выполнения277
Прокси -режим277
11.8 Дальнейшее чтение: основанные на роле277
Субъект и объект277
Ролевые соображения278
Основанные на задачах соображения278
На самом деле, два метода объединены279
11.9Знание, изученные в этой главе279
11.10Вопрос упражнения280
Глава 1Режим активного объекта——283
12.1Режим активного объекта284
12.2Пример программы 1284
Вызывающий абонент: основной класс287
Caller: Makerclientthread Class288
Caller: класс DisplayClientThread289
Интерфейс активного объекта289
Active Object Party: ActiveObjectFactory Class290
Активный объект: прокси -класс290
Active Object: класс SchedulerThread291
Active Object Party: ActivationQueue Class292
Active Object: MethodRequest Class293
Активный объект: класс makestringrequest294
Активный объект: класс DisplayStringRequest295
Активный объект: результат класс295
Активный объект: FuturerSult Class296
Активный объект: realResult class296
Активный объект: класс слуг297
Запуск примера программы 1297
12.3Листинг ролей в режиме ActiveObject298
12.4Ключевые моменты для расширения идей304
Что именно сделал304
Гранулярность проблемы необходимо учитывать при использовании модели304
О параллелизме304
Добавить метод305
Роль роли планировщика305
Взаимодействие между активными объектами306
Укладывает до распределения——306
12.5Связанные шаблоны дизайна306
Режим продюсера-потребителя306
Будущий режим307
Режим рабочей потока307
Режим хранения специфического потока307
12.6Дополнительное чтение: java.util.concurrent пакет и шаблон активного объекта307
Класс и интерфейс307
Вызывающий абонент: основной класс309
Caller: Makerclientthread Class309
Caller: класс DisplayClientThread310
Интерфейс активного объекта311
Active Object Party: ActiveObjectFactory Class311
Активный объект: ActiveObjectImpl Class312
Запуск примера программы 2313
12.7Знание, изученные в этой главе314
12.8Вопрос упражнения315
Глава 1Подведем итог——321
13.1Многопоточный язык образец программирования322
Шаблоны и языки шаблонов322
13.2Однополосный режим выполнения
——323
13.3 Неизримый режим
——324
13.4 Охраняемый режим подвески
——325
13.5 Режим балансировки
——326
13.6 Режим производителя-потребитель
——327
13.7 Режим блокировки чтения-записи
——328
13.8 Режим потока за Message
——329
13.9
——330
13.10Будущий режим
——330
13.11Двухфазный режим завершения
——331
13.12Режим хранения специфического потока
——332
13.13Режим активного объекта
——333
13.14Написано после335
Приложение337
Приложение ответы на упражнение338
Приложение B модель памяти Java447
Приложение C Приоритет потоков Java467
Приложение D API, связанные с поток469
Приложение E Java.util.concurrent пакет475
Приложение F Заводящие этапы образца программы483
Приложение G Ссылки485
