“设计模式”一词也常常会让开发人员感到畏惧。其实设计模式不过是对代码设计方式的总结和归纳。在我们的代码中,设计模式无处不在,只是我们没有注意到它们而已。善用设计模式可以帮助我们编写出具有高可复用性且松耦合的代码。
那么,今天就把“多线程”与“设计模式”这两个主题放在一起,是不是已经开始有点期待还有点畏惧了呢?但是软件开发就是这么一件有趣的事情——随着我们心中的恐惧与日俱增,想要试着挑战的心情也会越来越迫切。
推荐理由:
编写了300个Java示例程序来实现设计模式,掌握这些设计模式,可以避免程序发生死锁、节省资源、提高性能等,让多线程程序更高效。java.util.concurrent包、synchronized关键字、Swing框架、Java内存模型等内容也均有涉及,不仅能够了解Java多线程的相关知识,还可加深对Java语言的理解;
需要这份《多线程与设计模式》手册的朋友,只需关注后点点我,即可领取即可免费获取;
内容简介:
第1章:“Single Threaded Execution模式——能通过这座桥的只有一个人”将介绍多线程编程中最基础的一种设计模式——Single Threaded Execution模式。该模式可以确保执行处理的线程只能是一个,这样就可以有效防止实例不一致。本章还将深入介绍Java语言的synchronized关键字,并给出计数信号量java.util.concurrent.Semaphore的示例程序。
第2章:“Immutable模式——想破坏也破坏不了”将介绍Immutable模式,即实例一旦创建完毕,其内容便不可更改的模式。在该模式下,由于实例不会不一致,所以无需执行互斥处理,程序性能也能提高。本章还将讲述Java语言中final的含义,并给出collections.synchronizedList及java.util.concurrent.copyonwriteArrayList的示例程序。
第3章:“Guarded Suspension模式——等我准备好哦”将介绍Guarded Suspension模式,即在实例进入目标状态之前,防止线程继续执行的模式。该模式也可以防止实例不一致。通过本章还可以练习Java语言中的wait方法和notifyAll方法的使用。本章还将给出阻塞队列java.util.concurrent.LinkedBlockingQueue的示例程序。