Friday, 27 April 2018

Synchronized keyword in multithreading.....................

package multithreading;

public class TablePrint {


synchronized public void tablePrint(int no)
{
for(int i=1;i<=10;i++)
{
System.out.println(no+"*"+i+"="+(no*i));
}
}
}


=================================================================================================

package multithreading;

public class Govind extends Thread {

TablePrint tp;

public Govind(TablePrint tp) {
super();
this.tp = tp;
}

public void run()
{

tp.tablePrint(19);
}


}


=================================================================================================

package multithreading;

public class Ballabh  extends Thread{

TablePrint tp;

public Ballabh(TablePrint tp) {
super();
this.tp = tp;
}


public void run()
{
tp.tablePrint(18);
}


}


==================================================================================================

package multithreading;

public class Khan extends Thread {

TablePrint tp;

public Khan(TablePrint tp) {
super();
this.tp = tp;
}

public void run()
{
tp.tablePrint(17);
}


}

==============================================================================================
package multithreading;

public class TableMain {
public static void main(String[] args) {
TablePrint tp=new TablePrint();
Govind g=new Govind(tp);
Ballabh b=new Ballabh(tp);
Khan k=new Khan(tp);
g.start();
b.start();
k.start();

}

}
=====================================================================================================
o/p:---------------------------------------
without synchronization
19*1=19
19*2=38
18*1=18
18*2=36
18*3=54
18*4=72
18*5=90
18*6=108
18*7=126
18*8=144
18*9=162
18*10=180
17*1=17
17*2=34
17*3=51
17*4=68
17*5=85
17*6=102
17*7=119
17*8=136
17*9=153
17*10=170
19*3=57
19*4=76
19*5=95
19*6=114
19*7=133
19*8=152
19*9=171
19*10=190



o/p:---------------------------------------
with synchronization

18*1=18
18*2=36
18*3=54
18*4=72
18*5=90
18*6=108
18*7=126
18*8=144
18*9=162
18*10=180
19*1=19
19*2=38
19*3=57
19*4=76
19*5=95
19*6=114
19*7=133
19*8=152
19*9=171
19*10=190
17*1=17
17*2=34
17*3=51
17*4=68
17*5=85
17*6=102
17*7=119
17*8=136
17*9=153
17*10=170

No comments:

Post a Comment