Javaの並行プログラミング・ノート(9) - マルチスレッドのベストプラクティス
ローカル変数を使用します
不変クラス
最小化スコープのロック範囲
直接新しいスレッドを実行するのではなく、スレッドプールエグゼキュータを使用します
むしろ、同期とのスレッドが待機し、通知は使用しないでください
使用BlockingQueueの生産を達成 - 消費パターンを
むしろロックの同期セットの追加よりも、同時コレクションを使用します(これらのコレクションを使用して回避しようと、このようなCollections.synchronizedなど、特別なコレクションは、同期提供をJUC必要があります)
有界アクセスを作成するために、セマフォを使用します
むしろ同期させる方法を使用していない同期コードブロックを使用
静的変数を使用しないでください