検索

ホームページ  >  に質問  >  本文

java - 线程的 start() 能保证顺序吗?

在 main 中创建两个线程,先 thread1.start();然后 thread2.start();能确保 thread1 的 run() 方法先执行吗?

PHP中文网PHP中文网2887日前472

全員に返信(4)返信します

  • 大家讲道理

    大家讲道理2017-04-18 10:36:58

    いいえ、start メソッドが呼び出された後、スレッドは実行状態ではなく準備完了状態になるだけです - その後、JVM がスレッドの実行時に調整します (つまり、Thread の run メソッドを実行します)

    返事
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:36:58

    • もちろん違います

    • ただし、run メソッドを直接実行すると、run() 内のコードが現在のスレッドでシリアルに実行される可能性があります

    返事
    0
  • PHP中文网

    PHP中文网2017-04-18 10:36:58

    スレッドの同時実行性が使用されるため、考慮すべき重要な問題は実行順序ではありません。先着順で行う必要がある場合は、join メソッドを使用してください

    返事
    0
  • PHPz

    PHPz2017-04-18 10:36:58

    質問する前に自分で答えを見つけることができますか?スレッドの基本概念については、オンラインで十分な情報が入手できます。

    返事
    0
  • キャンセル返事