=
ホーム
On Your Mark
ホーム
/
設計(Java)
/
【Java】 Effective Java 第二版 お勉強 コンカレンシーユーティリティ
2014年1月13日月曜日
Java
基本
設計(Java)
t
f
B!
P
L
# 並行性 ## 今日 読んだところ P 264~268 ## 項目 waitとnotifyよりコンカレンシーユーティリティを選ぶ
## コンカレンシーユーティリティ コンカレンシーユーティリティは下記の3つに分類される。
* エグゼキューターフレームワーク
* コンカレントコレクション
* シンクロナイザー
waitとnotifyは難易度が高いため、コンカレンシーユーティリティを使用するほうが良い。
## コンカレントコレクション List、Queue、Map等の標準コレクションインターフェイスの高パフォーマンスな並列実装を提供する。
内部的に独自の同期を管理しているので、パフォーマンスが良い。
※synchronizedMapよりも高機能で速い
## 状態依存更新操作 ただし、逆にいうとコンカレントコレクションから並行処理を排除することは不可能。
クライアント側からコンカレントコレクションに対して、複数のメソッド呼び出しをアトミックにまとめることができない。
そのため複数の基本的な操作を、単一のアトミック操作にまとめた操作を提供する。
## ブロック操作 操作が完了するまで待つように拡張された操作のこと。
BlockingQueue等があてはまる。
## シンクロナイザー スレッドが他のスレッドを持つことを可能にするオブジェクト
CountDownLatch、Semaphore、CyclicBarrier、Exchanger 等がある。
CountDownLatchの場合、
カウントを使用してスレッドを待機させる(await())ことができ、
カウント(countDown())がゼロになるとスレッドをブロックする。
Translate
このブログを検索
ブログアーカイブ
►
2020
(38)
6月 2020
(6)
5月 2020
(10)
4月 2020
(10)
3月 2020
(4)
2月 2020
(5)
1月 2020
(3)
►
2019
(4)
1月 2019
(4)
►
2018
(23)
12月 2018
(3)
4月 2018
(11)
3月 2018
(9)
▼
2014
(20)
7月 2014
(3)
1月 2014
(17)
►
2013
(166)
12月 2013
(15)
11月 2013
(22)
10月 2013
(31)
9月 2013
(26)
8月 2013
(32)
7月 2013
(40)
今週の人気の記事
【考察】シンカリオン 名前の由来を考察 -運転士編-
【MySQL】文字列をバイト数で切り取る
【まとめ】GWはおうちでぬりえ 鉄道会社公式の電車ぬりえをまとめた
【まとめ】おうちでペーパークラフト 鉄道会社公式のペーパークラフトをまとめた
【考察】シンカリオン 名前の由来を考察 -キトラルザス編-
フォロワー
On Your Mark
QooQ
0 件のコメント:
コメントを投稿