Java Program to handle Thread Synchronization – Q29
Q29: Java Program to synchronize methods in the previous Program and get the correct output.
class Callme{ synchronized void call(String msg){ System.out.print("[" + msg); try{ Thread.sleep(1000); } catch(InterruptedException e){ System.out.println("Interrupted"); } System.out.println("]"); } } class Caller implements Runnable{ String msg; Callme target; Thread t; public Caller(Callme targ, String s){ target = targ; msg = s; t = new Thread(this); t.start(); } public void run(){ target.call(msg); } } class Synch{ public static void main(String args[]){ Callme target = new Callme(); Caller ob1 = new Caller(target, "Hello"); Caller ob2 = new Caller(target, "Dear"); Caller ob3 = new Caller(target, "Manoj"); try{ ob1.t.join(); ob2.t.join(); ob3.t.join(); } catch(InterruptedException e){ System.out.println("Interrupted"); } } }
… from College notes (BCA/MCA assignments):
Categories: Java
Java OO Programs, Runnable Interface, Thread Synchronization
Comments (0)
Trackbacks (0)
Leave a comment
Trackback