multi-threading

The Art of Multiprocessor Programming - 개요

kilkoon 2022. 10. 26. 16:37

제목의 서적을 읽고 멀티스레드 프로그래밍을 하는 데 고려하거나 구현해야할 요소들을 알아보자.

 

우선 책은 아래와 같이 Principles과 Practices 두 파트로 나뉘어져 있다.

 

1. Introduction

 

[Principles]

2. Mutual Exclusion

3. Concurrent Objects

4. Foundations of shared memory

5. The relative power of primitive synchronization operations

6. Universality of consensus

 

[Practices]

7. Spin locks and contention

8. Monitors and blocking synchronization

9. Linked lists: The role of locking

10. Queues, memory management, and the ABA problem

11. Stacks and elimination

12. Counting, sorting, and distributed coordination

13. Concurrent hashing and natural parallelism

14. Skiplists and balanced search

15. Priority queues

16. Scheduling and work distribution

17. Data parallelism

18. Barriers

19. Optimism and manual memory management

20. Transactional programming