私の家庭教師は、メインスレッドはすべてのスレッドの親スレッドであると教えてくれましたが、その理由を説明することはできません。
簡単なプログラムを書くとき:
_Class A{}
_
次に、実行時に例外をスローします。
_Java.lang.NoSuchMethodError: main Exception in thread "main"
_
main()
メソッドとメインスレッドの間に関係はありますか?
Main()メソッドとメインスレッドの間に関係はありますか?
JVMが起動すると、「メイン」と呼ばれるスレッドが作成されます。自分で追加のスレッドを作成しない限り、プログラムはこのスレッドで実行されます。
「メイン」スレッドが最初に行うことは、static void main(String[] argv)
メソッドを探して呼び出すことです。これがプログラムへのエントリポイントです。
物事を「同時に」発生させたい場合は、複数のスレッドを作成し、それぞれに何かを実行させることができます。その後、彼らはこれらのことを同時に行い続けます。 JVMは、ガベージコレクションなどのバックグラウンド作業用の内部スレッドもいくつか作成します。
まず、_Main Thread is a parent thread of every thread
_はあいまいです。 Process
とは異なり、Javaスレッドには、親と子の概念はありません。スレッドをグループ化してから子グループを作成するためのThreadGroups
がありますが、 Process
とは異なり、親が死亡しても子は残ります。
main
スレッドは、プログラムを開始するスレッド、または単にpublic static void main(String... args)
メソッドを実行するスレッドです。