先日、こんな質問をされたので、マルチタスクについて私なりにちょっと考えてみましたのでお付き合いください。
マルチタスクあるある
私自身、マルチタスクは苦手だと思っています。そこで、マルチタスクについて考えてみたところ3つ浮かんできました。
・複数の仕事を同時にやろうと思ってもできない
・複数の仕事を抱えていると何がどこまで行ったかわからない
・何かやっているときに他の仕事のことを考えてしまって集中できない
マルチタスクが苦手な人はきっと「あるある」と思っていただけるのではないでしょうか。
でもここで疑問が湧いてきました。あれ、これってマルチタスクなのかな・・・?そもそもマルチタスクって何だったっけ・・・?わからなくなってきたので、Google先生に聞いて調べてみました。
マルチタスク (Multi Tasking) は、コンピュータにおいて複数のタスク(プロセス)を切り替えて実行できるシステムのことである。マルチプログラミング、マルチプロセスともいう。逆に、同時に一つのタスクしか実行できない方式をシングルタスクという。
1つのCPUしかないコンピュータでは、ある瞬間には1つの処理しか実行できない。しかし、CPUの処理時間を数十ミリ秒といった短い時間で区切り、タスク間で1つのCPUをタイムシェアリングすることによって、ユーザーから見ると、複数のアプリケーション(タスク・プロセス)が同時に実行されているように見える。
〜引用ここまで〜
人間には脳味噌1つしかないので、ある瞬間には1つの処理しか実行できません。マルチタスクを上手くできるようになるには、この前提を認識することが大切なのではと思います。
そんなの当たり前じゃん?とツッコミが来そうですね・・・。でも前述のマルチタスクについて考えてみて浮かんできた3点をもう一度見直してみてください。
・複数の仕事を同時にやろうと思ってもできない
・複数の仕事を抱えていると何がどこまで行ったかわからない
・何かやっているときに他の仕事のことを考えてしまって集中できない
これ、マルチタスクのことを言ってないなと。じゃあマルチタスクじゃなくて何をしようと思っていたんだろう・・・?
明日は「マルチプロセッシング(並列処理)」について書いてみます。
今日はこの辺で、また明日。