Click here to watch in Youtube :
https://www.youtube.com/watch?v=uzbWlktdMLk&list=UUhwKlOVR041tngjerWxVccw
Click the below Image to Enlarge
Java Tutorial: Java Synchronization (Synchronization in java | synchronized block in java_V2) |
public class Table { public void printTable(int n) { /* * Synchronized block */ synchronized (this) { System.out.println("Thread Name = " + Thread.currentThread().getName()); for (int i = 1; i <= 5; i++) { System.out.println(n * i); try { Thread.sleep(1000); } catch (Exception e) { System.out.println(e); } } } } }SynchronizationDemo.java
import java.io.IOException; public class SynchronizationDemo { public static void main(String[] args) throws IOException { Table tableObj = new Table(); /* * Created the two threads by annonymous class. */ Thread t1 = new Thread() { public void run() { tableObj.printTable(5); } }; Thread t2 = new Thread() { public void run() { tableObj.printTable(100); } }; t1.start(); t2.start(); } }Output
------------------------------------- If printTable method has synchronized block, then below will be the output: ------------------------------------- Thread Name = Thread-0 5 10 15 20 25 Thread Name = Thread-1 100 200 300 400 500 ----------------------------------------- If printTable method does not have synchronized block, then below will be the output: ----------------------------------------- Thread Name = Thread-1 100 Thread Name = Thread-0 5 200 10 15 300 20 400 25 500Click the below link to download the code:
https://sites.google.com/site/ramj2eev1/home/javabasics/Synchronization_Block_annonymous_App.zip?attredirects=0&d=1
Github Link:
https://github.com/ramram43210/Java/tree/master/BasicJava/Synchronization_Block_annonymous_App
Bitbucket Link:
https://bitbucket.org/ramram43210/java/src/644abf74fceeb240066dd3d2fe2e4b1fb6c4bd48/BasicJava/Synchronization_Block_annonymous_App/?at=master
See also:
No comments:
Post a Comment