Карточка | Таблица | RUSMARC | |
Khot, Atul S. Concurrent patterns and best practices: build scalable apps with patterns in multithreading, synchronization, and functional programming. — Birmingham: Packt, 2018. — 1 online resource (258 p.) — <URL:http://elib.fa.ru/ebsco/1904973.pdf>.Дата создания записи: 06.10.2018 Тематика: Software patterns.; Application software — Development.; Object-oriented programming (Computer science); COMPUTERS / Software Development & Engineering / General.; COMPUTERS / Programming / Object Oriented. Коллекции: EBSCO Разрешенные действия: –
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Группа: Анонимные пользователи Сеть: Интернет |
Права на использование объекта хранения
Место доступа | Группа пользователей | Действие | ||||
---|---|---|---|---|---|---|
Локальная сеть Финуниверситета | Все | |||||
Интернет | Читатели | |||||
Интернет | Анонимные пользователи |
Оглавление
- Cover
- Title Page
- Copyright and Credits
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Concurrency – An Introduction
- Concurrency in a breeze
- The push for concurrency
- The MapReduce pattern
- Fault tolerance
- Time sharing
- Two models for concurrent programming
- The push for concurrency
- The message passing model
- Coordination and communication
- Flow control
- Divide and conquer
- The concept of state
- The shared memory and shared state model
- Threads interleaving – the need for synchronization
- Race conditions and heisenbugs
- Correct memory visibility and happens-before
- Sharing, blocking, and fairness
- Asynchronous versus synchronous executions
- Java's nonblocking I/O
- Of patterns and paradigms
- Event-driven architecture
- Reactive programming
- The actor paradigm
- Message brokers
- Software transactional memory
- Parallel collections
- Summary
- Concurrency in a breeze
- Chapter 2: A Taste of Some Concurrency Patterns
- A thread and its context
- Race conditions
- The monitor pattern
- Thread safety, correctness, and invariants
- Sequential consistency
- Visibility and final fields
- Double-checked locking
- Safe publication
- Initializing a demand holder pattern
- Explicit locking
- The hand-over-hand pattern
- Observations – is it correct?
- The producer/consumer pattern
- Spurious and lost wake-ups
- Comparing and swapping
- Summary
- Chapter 3: More Threading Patterns
- A bounded buffer
- Strategy pattern – client polls
- Strategy – taking over the polling and sleeping
- Strategy – using condition variables
- Reader or writer locks
- A reader-friendly RW lock
- A fair lock
- Counting semaphores
- Our own reentrant lock
- Countdown latch
- Implementing the countdown latch
- A cyclic barrier
- A future task
- Summary
- A bounded buffer
- Chapter 4: Thread Pools
- Thread pools
- The command design pattern
- Counting words
- Another version
- The blocking queue
- Thread interruption semantics
- The fork-join pool
- Egrep – simple version
- Why use a recursive task?
- Task parallelism
- Quicksort – using fork-join
- The ForkJoinQuicksortTask class
- The copy-on-write theme
- In-place sorting
- The map-reduce theme
- Work stealing
- Active objects
- Hiding and adapting
- Using a proxy
- Summary
- Thread pools
- Chapter 5: Increasing the Concurrency
- A lock-free stack
- Atomic references
- The stack implementation
- A lock-free FIFO queue
- How the flow works
- A lock-free queue
- Going lock-free
- The enque(v) method
- The deq() method
- Concurrent execution of the enque and deque methods
- Going lock-free
- The ABA problem
- Thread locals
- Pooling the free nodes
- The atomic stamped reference
- Concurrent hashing
- The add(v) method
- The need to resize
- The contains(v) method
- The add(v) method
- The big lock approach
- The resizing strategy
- The lock striping design pattern
- Summary
- A lock-free stack
- Chapter 6: Functional Concurrency Patterns
- Immutability
- Unmodifiable wrappers
- Persistent data structures
- Recursion and immutability
- Futures
- The apply method
- by-name parameters
- Future – thread mapping
- Futures are asynchronous
- Blocking is bad
- Functional composition
- The apply method
- Summary
- Immutability
- Chapter 7: Actors Patterns
- Message driven concurrency
- What is an actor?
- Let it crash
- Location transparency
- Actors are featherlight
- State encapsulation
- Where is the parallelism?
- Unhandled messages
- The become pattern
- Making the state immutable
- Let it crash - and recover
- Actor communication – the ask pattern
- Actors talking with each another
- Actor communication – the tell pattern
- The pipeTo pattern
- What is an actor?
- Summary
- Message driven concurrency
- Other Books You May Enjoy
- Index
Статистика использования
Количество обращений: 0
За последние 30 дней: 0 Подробная статистика |