Machine-translated by Google. Questions are authored in English.
Top

Discussion

Sample02 is run - what will be the output?

public class Sample02
{
    public static void main(String[] args) throws InterruptedException
    {
        Thread t = new Thread(() -> System.out.println("worker"));
        t.start();
        t.join();
        System.out.println("main");
    }
}

  • A.worker only
  • B.worker then main
  • C.main then worker
  • D.Either order

Answer: B

join() blocks the calling thread until the target has died, so the print inside the worker is guaranteed to complete before main reaches its own. This is the one reliable way to order output across threads; without the join either order would be possible.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.