1.

What will be the output of the program? public class SyncTest { public static void main (String [] args) { Thread t = new Thread() { Foo f = new Foo(); public void run() { f.increase(20); } }; t.start(); } } class Foo { private int data = 23; public void increase(int amt) { int x = data; data = x + amt; } } and assuming that data must be protected from corruption, what—if anything—can you add to the preceding code to ensure the integrity of data?

A. Synchronize the run method.
B. Wrap a synchronize(this) around the call to f.increase().
C. The existing code will cause a runtime exception.
D. Synchronize the increase() method
Answer» E.


Discussion

No Comment Found