Java Multithreading Objective Questions and Answers - Set 2

Test your skills in Java multithreading with carefully curated objective questions including output-based MCQs. Ideal for interview preparation and mastering concurrency concepts such as synchronization, executors, locks, atomic variables, deadlocks, and performance tuning. This is part 2 of the series.

Practice Java Multithreading MCQs with Detailed Explanations

Answer at least 12 questions to submit and verify answers.

16 What is a livelock? High

17 Which method can interrupt a thread? Medium

18 What is the effect of calling notify()? Medium

19 Which is true about volatile writes? High

20 What is the purpose of CountDownLatch? Medium

21 Which is best for limiting concurrent access to a resource? Medium

22 What is a ForkJoinPool optimized for? High

23 Which method submits a task and returns a Future? Medium

24 What happens if two threads call join() on each other? High

25 Which collection is thread-safe without external synchronization? Medium

26 Which problem is caused by instruction reordering? High

27 What is the default behavior of ReentrantLock? Medium

28 Which construct allows multiple readers but single writer? Medium

29 What is thread starvation? Medium

30 What is the output? int x = 0; Thread t1 = new Thread(() -> x++); Thread t2 = new Thread(() -> x++); t1.start(); t2.start(); Thread.sleep(100); System.out.println(x); High