ホームページ  >  記事  >  Java  >  Javaのスレッドとは何ですか?どのように理解すればよいでしょうか?

Javaのスレッドとは何ですか?どのように理解すればよいでしょうか?

王林
王林オリジナル
2019-11-13 10:12:593141ブラウズ

Javaのスレッドとは何ですか?どのように理解すればよいでしょうか?

#スレッドの概念と原理

スレッドとは、プロセス内の実行プロセスを指し、1 つのプロセス内で複数のスレッドを実行できます。たとえば、java.exe プロセスでは多くのスレッドを実行できます。スレッドは常に特定のプロセスに属し、独自の仮想アドレス空間を持たず、プロセスに割り当てられたすべてのリソースをプロセス内の他のスレッドと共有します。

スレッドは、実行中のプロセスとは異なります。それぞれの独立したスレッドには、プログラム実行のエントリ ポイント、順次実行シーケンス、およびプログラムの終了ポイントがあります。ただし、スレッドは独立して実行できず、アプリケーション プログラム内に存在する必要があり、アプリケーション プログラムは複数のスレッドの実行制御を提供します。

スレッドはプロセスの実体であり、CPUのスケジューリングやディスパッチの基本単位であり、プロセスよりも小さく、独立して実行できる基本単位です。スレッド自体は基本的にシステム リソースを所有せず、実行に不可欠な少数のリソース (プログラム カウンター、レジスタのセット、スタックなど) のみを所有しますが、プロセスが所有するすべてのリソースを他のスレッドと共有できます。同じプロセスに属します。

スレッドには独自のスタックとローカル変数がありますが、スレッド間に個別のアドレス空間はありません。スレッドには次のものが含まれます:

1. 現在のスレッドへのポインター実行された命令の命令ポインタ;

2. スタック;

3. 実行中のスレッドのプロセッサ状態を記述する値の一部を定義するレジスタ値のコレクション;

4. プライベート データ領域。

Java のスレッド

Java では、「スレッド」は 2 つの異なるものを指します:

1. java.lang.Thread クラス のインスタンス;

2. スレッドの実行。

Java プログラムでは、スレッドを作成する 2 つの方法があります:

最初に、Thread クラスを派生して run メソッドをオーバーライドします;

2 番目に、Runnable インターフェイス create を実装します。

推奨チュートリアル:

Java チュートリアル

以上がJavaのスレッドとは何ですか?どのように理解すればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。