他の人が書いたプロジェクトの多くの場所でそのようなコードに出くわしましたが、なぜ誰かがそのようなコードを書くのか、いまだに困惑しています。
次のコードを考えてみましょう (このコードは C# ですが、多くの言語にも当てはまると思います - おそらく構文やクラスの名前とこれを行う方法が異なるだけです - あなたはアイデアを得る.):
Thread thread;
thread = new Thread(new ThreadStart(method));
thread.Start();
thread.Join();
私の理解では、このコードはスレッドを開始して実行method
し、このスレッドは他のことを何もせずに、新しく開始されたスレッドが終了するのを待つことを意味します。
その場合、メソッドを直接呼び出さない理由、つまり
method()
私の理解が正しいかどうか、誰か説明してもらえますか? 最初のコード フラグメントは、2 番目のコード フラグメントと機能的に同じですか?