Question: QUESTION 19 In the code below, 2 threads are created and ran with two objects (that would be actual data in a more complete program.)
QUESTION 19 In the code below, 2 threads are created and ran with two objects (that would be actual data in a more complete program.) The output from this program is: Thread 1: Holding lock 1. Thread 2: Holding lock 2... Thread 1: Waiting for lock 2... Thread 2: Waiting for lock 1.. What is this situation called? public class TestThread ( public static Object Lock1 public static Object Lock2 new Object); new Object): public static void main(String args0) Thread1 T1 new Thread10: Thread2 T2 new Thread20: T1.start0: T2.start): private static class Thread1 extends Thread ( public void runo ( synchronized (Lock1) ( System.out.printin( Thread 1: Holding lock 1...": try (Thread.sleep(10);) catch (InterruptedException e) 0 System.out.printin("Thread 1: Waiting for lock 2.." synchronized (Lock2)( System.out.printin("Thread 1: Holding lock 1 &2.." private static class Thread1 extends Thread ( public void runo ( synchronized (Lock1)f System.out.println("Thread 1: Holding lock 1..."); try ( Thread.sleep(10): ) catch (InterruptedException e) 0 System.out.println("Thread 1: Waiting for lock 2.."; synchronized (Lock2) ( System.out.println("Thread 1: Holding lock 1 &2...") private static class Thread2 extends Thread f public void runo ( synchronized (Lock2) ( System.out.println("Thread 2: Holding lock 2..."); try (Thread.sleep(10):) catch (InterruptedException e)0 System.out.println("Thread 2: Waiting for lock 1..."): synchronized (Lock1) ( System.out.println("Thread 2: Holding lock 1 &2.." Asynchronous threading Race Condition D www.science-intera... Exploring Science www.science-intera...G y Question Completion Status: private static class Thread2 extends Thread ( public void runo ( synchronized (Lock2) ( System.out.println"Thread 2: Holding lock 2..": try ( Thread.sleep(10); ) catch (InterruptedException e) 0 System.out.println("Thread 2: Waiting for lock 1..."); synchronized (Lock1) t System.out.println("Thread 2: Holding lock 1 &2.") Asynchronous threading Race Condition Deadlock condition Synchronisation collapse QUESTION 20 When your app starts up on Android it is assigned to a Main thread, ensure that work is spread out (and take advantage of multiple cores But what can you not access directly from threads you create
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
