> For the complete documentation index, see [llms.txt](https://yunzhao.gitbook.io/notes/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yunzhao.gitbook.io/notes/java/concurrency/concurrency-design-patterns.md).

# Concurrency Design Patterns

* [不可变](/notes/java/concurrency/concurrency-design-patterns/immutable.md)
* [写时复制](/notes/java/concurrency/concurrency-design-patterns/copy-on-write.md)
* [线程本地变量](/notes/java/concurrency/concurrency-design-patterns/threadlocal.md)
* 多线程版本的 If：[Guarded Suspension 模式](/notes/java/concurrency/concurrency-design-patterns/guarded-suspension.md#guarded-suspension)，[Balking 模式](/notes/java/concurrency/concurrency-design-patterns/guarded-suspension.md#balking)
* 分工问题：[Thread-Per-Message](/notes/java/concurrency/concurrency-design-patterns/division.md#thread-per-message)，[Work Thread](/notes/java/concurrency/concurrency-design-patterns/division.md#work-thread)，[生产者-消费者](/notes/java/concurrency/concurrency-design-patterns/division.md#sheng-chan-zhe-xiao-fei-zhe)
* [两阶段终止模式](/notes/java/concurrency/thread-state.md#liang-jie-duan-zhong-zhi-mo-shi)
