スレッド(Thread)とは?

アニメーションやBGMなどを実現する機構が Thread のクラスです。


アプレットの魅力は、アニメーションや BGM のような効果を HTML 上で行える点でしょう。 従来に比べて格段にバラエティーに富んだページ作りが可能になります。
しかし、こうした処理を実現するのは、それほど簡単なことではありません。 たとえば1つのページに複数のアプレットが存在し、 それぞれ独立にアニメーションを行うようなケースも考慮しなくてはいけません。 こうした要求に応えるため、 Java言語には Thread(スレッド)と呼ばれるクラスが 用意されています。 Threadを用いることで、アプレットは手軽に並列処理を実現できるのです。

「スレッド」という用語は、Java言語だけのものではありません。 皆さんが使っている Solarisなど最近のOSで注目を浴びている概念です。 簡単に説明すると、1つのプログラムをさらに細かく分けた 仕事の単位のことです。 従来のUNIXのプロセス単位の切り替えではなく、 スレッド単位で仕事を切り替えることで効率化を図るとともに、 1つのプログラムの中の処理を並列的に行うことが自然な形で実現されます。
ただし Java言語の Threadクラスは、 OSのレベルの「スレッド」そのものではありません。 むしろ 「スレッド(もしくはそれに似た仕組み)をコントロールするために 用意するデータ」だと考えてください。 ですから、スレッドの機能を持たないOS上でも Threadを使ったアプレットを疑似的に実行させることは理論上可能です。