给线程命名最小化同步范围优先使用 volatile 而不是 synchronized。尽可能使用更高层次的并发工具,而非使用 wait() 和 notify() 来实现线程间通信,如 BlockingQueue(阻塞队列)。先使用并发容器,而非同步容器可以考虑使用线程池