猫型エンジニアのブログ

プログラム/ネットワーク系の技術関連をまとめたページです 

同期処理と非同期処理

それぞれの違い

 同期処理では、あるタスクが実行している間、他のタスクの処理は中断される方式です。非同期処理は、あるタスクが実行をしている際に、他のタスクが別の処理を実行できる方式になります。
 

メリット・デメリット

 同期処理の場合は、時間がかかるタスクが存在する場合、そのプロセスが完了するまで他のプロセスも完了しません。これにより全体の効率(スループット)が低下する場合があります。

 そのため各プロセスは非同期で処理を行い、CPUはプロセスの完了は割り込みで検出することで、全体の処理効率を向上させます。

??各プロセスで実行する処理の優先度はどうなっているのか? => CPUの処理周り
??タスクとプロセスとスレッドとジョブはそれぞれどう違うのか?

実装

 非同期処理の実装の仕方には、プロセスを複数個に分割するマルチプロセスや、プロセスの中でスレッドを分割するマルチスレッドなどがあります。

==> トータルで見たら変わらないのでは?
入出力も考える必要がある。
同期処理の場合、処理が完了するまでCPUはスリープ状態になる。割り込みで完了する。

http://oshiete.goo.ne.jp/qa/4830097.html

www.slideshare.net