マルチスレッド本から学んだこと
並列処理の基本
- 「安全性」と「生存性」を守るのは必須
- その上で、いかにして「再利用性」と「パフォーマンス」を上げるかが重要
Single Thread Executionパターン
- 衝突しないようにguard(排他処理)をしましょう、というもの。
- 衝突の種類
- write-write conflict
- read-write conflict
- 衝突の種類
Immutableパターン
- 状態が全く変わらない(Immutable)なら、衝突を考慮するがなくていよね。速いし。というもの。
- StringがImmutable、StringBufferがMutable。
- 設計してて、ImmutableとMutableに切り分けられそうだったら、分けちゃいましょう。