![見出し画像](https://assets.st-note.com/production/uploads/images/7311834/rectangle_large_type_2_1d667de830d2a0a029e3d2b536f0f85b.jpg?width=1200)
「スレッド」について 職業訓練36日目
スレッドとは?
Javaでは複数の処理の流れを持つことが出来ます。またその複数の処理を同時に行う機能を使うことが出来ます。まずこの処理の流れ一つ一つを「スレッド」と言います。そして複数のスレッドを同時に処理していくことをスレッドを起動すると言います。
複数のスレッドを同時に処理することで効率的にプログラムを実行することが出来ます。例えば繰り返しの処理を大量に行っている時、その間に別の処理を行うことで時間は効率的に使うことができます。
スレッドを起動するには?
スレッドを起動するための構文は以下のようになります。
----------------------------------------------------------------------------
class クラス名 extends Thread;
public void run(){別スレッドで行いたい処理}
----------------------------------------------------------------------------
このようになります。extendsはクラスの継承の時にも使いました。つまりこの「Thread」もクラスの一つということです。
ここまでコードを入力したら、メインクラスでThreadクラスのサブクラスのオブジェクトを作成します。
オブジェクト.start();
↑スレッドを起動することができるので、run()で定義したメソッドの処理が行われます。
またメインクラスで先ほど同様のオブジェクトを複数作ることで、複数のスレッドを起動することが可能です。
もう1つのスレッド作成方法
先ほどご紹介したのはextendsを使ったものでした。クラスの継承は一つのクラスしか出来ません。したがって、すでに何らかのクラスを継承しているサブクラスにはextendsを使ってスレッドを作成することが出来ないのです。
こういった場合に「runnableインターフェース」を使います。構文はこのようになります。
----------------------------------------------------------------------------
class クラス名 implements runnable;
public void run(){別スレッドで行いたい処理}
----------------------------------------------------------------------------
違いはこれだけです。継承クラスでスレッドを実装するか。インターフェースでスレッドを実装するかです。処理の流れは変わりません。
今日はこの辺で失礼します。ありがとうございました。
この記事が気に入ったらサポートをしてみませんか?