java - 线程的 start() 能保证顺序吗?
PHP中文网
PHP中文网 2017-04-18 10:34:58
0
4
487

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

PHP中文网
PHP中文网

认证0级讲师

répondre à tous(4)
大家讲道理

Non, une fois la méthode start appelée, le thread passe uniquement à l'état prêt, pas à l'état d'exécution - la JVM organise alors le moment où le thread s'exécute (c'est-à-dire exécute la méthode run de Thread)

伊谢尔伦
  • Bien sûr que non

  • Cependant, l'exécution directe de la méthode run peut entraîner l'exécution du code dans run() en série dans le thread actuel

Ty80

Étant donné que la concurrence des threads est utilisée, le problème clé à considérer n'est pas l'ordre d'exécution. Si vous devez procéder par premier arrivé, premier servi, utilisez la méthode de jointure

PHPzhong

Pouvez-vous trouver la réponse vous-même avant de poser la question ? Il existe suffisamment d’informations en ligne sur les concepts de base des threads.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal