Sometimes we synchronize some specific portion of code, then we use block synchronization.
That means synchronizing specific code is known as block synchronization.
class Demo { void print(int n) { synchronized(this) // synchronized block { for(int i=1;i<=3;i++) { System.out.println(n*i); try { Thread.sleep(500); } catch(Exception e) { System.out.println(e); } } } } } class MyThread1 extends Thread { Demo d; MyThread1(Demo d) { this.d=d; } public void run() { d.print(5); } } class MyThread2 extends Thread { Demo d; MyThread2(Demo d) { this.d=d; } public void run() { d.print(10); } } public class SynchronizationExa2 { public static void main(String args[]) { Demo obj = new Demo(); MyThread1 obj1=new MyThread1(obj); MyThread2 obj2=new MyThread2(obj); obj1.start(); obj2.start(); } }
5
10
15
10
20
30
Silan Software is one of the India's leading provider of offline & online training for Java, Python, AI (Machine Learning, Deep Learning), Data Science, Software Development & many more emerging Technologies.
We provide Academic Training || Industrial Training || Corporate Training || Internship || Java || Python || AI using Python || Data Science etc