찾다

 >  Q&A  >  본문

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

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

PHP中文网PHP中文网2888일 전484

모든 응답(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

    스레드 동시성을 사용하므로 고려해야 할 핵심 문제는 실행 순서가 아닙니다. 선착순으로 가야한다면 가입방법을 이용하세요

    회신하다
    0
  • PHPz

    PHPz2017-04-18 10:36:58

    질문을 하기 전에 스스로 답을 찾을 수 있나요? 스레드의 기본 개념에 대한 충분한 정보가 온라인에 있습니다.

    회신하다
    0
  • 취소회신하다