同時プログラミング1:同時概念と基礎
2004 ワード
同時プログラミング:同時概念と基礎
紹介する
マルチスレッドと同時実行
プロセス
スレッド
マルチスレッドの利点
マルチスレッドがもたらす課題1、セキュリティ問題2、プログラミングの複雑さ
シリアルとパラレル
同時発生条件1、マルチスレッドシーン2、存在リソース共有(ローカル変数はスレッドプライベート、メンバ変数はスレッド共有)3、共有リソースは状態あり(状態あるという意味は簡単に理解するとその変化がプログラムやビジネスロジックに影響を与える)
Javaとマルチスレッド
両板斧を併発する
リファレンス
1、http://tutorials.jenkov.com/java-concurrency/benefits.html 2、同時プログラミング実戦
紹介する
, 、 ,
( )。 , 。
IO IO , ,CPU , CPU CPU 。
IO IO ,CPU 。
5 seconds reading file A
2 seconds processing file A
5 seconds reading file B
2 seconds processing file B
, 14
A , B A , AB 12 。
マルチスレッドと同時実行
CPU , , ,
CPU , CPU , 。
プロセス
, 。
, 。
スレッド
, , , 。
マルチスレッドの利点
1、
2、 ( web , Servlet )
3、
4、
マルチスレッドがもたらす課題1、セキュリティ問題2、プログラミングの複雑さ
シリアルとパラレル
: , , ,
: , 。
:
: , ( ),
( )
:
, , , 。
, , , , 。
, , , 。
, 。
同時発生条件1、マルチスレッドシーン2、存在リソース共有(ローカル変数はスレッドプライベート、メンバ変数はスレッド共有)3、共有リソースは状態あり(状態あるという意味は簡単に理解するとその変化がプログラムやビジネスロジックに影響を与える)
Javaとマルチスレッド
Java ,GC ( ),main ( )
両板斧を併発する
,
1、 (Synchronized )
2、 (ReentranLock)
:
JVM , , 。
, 。 , 。
リファレンス
1、http://tutorials.jenkov.com/java-concurrency/benefits.html 2、同時プログラミング実戦