Java Design Pattern
Introduction to Java 10
Introduction to Java 11
Introduction to Java 12

Java Block Synchronization

Sometimes we synchronize some specific portion of code, then we use block synchronization.

That means synchronizing specific code is known as block synchronization.

Example:
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();
	}
}
Output

5
10
15
10
20
30

About the Author



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






 PreviousNext