Skip to main content

Multiple Threads Accessing one method in Java

Concept:
               we want access multiple thread using one method
  Main Method: Several threads are coming different location than handle it using method
                          variable names are represented as global it as unique variable as all thread
  step:-1 synchronized method used to handle multiple thread and execute one by one thread
                        with in the main main method variable names are represented because of step by step execution of threads at the time same variable name represented as different thread
step:-2  multiple threads are coming we want execute step by step by using notify and wait
             notify means it will be report coming  to execution of threads
             wait(2000); means that one thread is able to access resource sharing remaining threads won't be access it will wait 2000msec

                       

//main method: 
public class Addition
{
public synchronized void add(int a,int b,boolean status)
{
Thread t=Thread.currentThread();
String name=t.getName();
System.out.println(name+"Thread started........");
System.out.println(name+"1st number.....="+a);
System.out.println(name+"2nd number.....="+b);
try
{
if(status)
notify();
else
wait(2000);
}
catch(InterruptedException ie)
{
ie.printStackTrace();
}
int c=a+b;
System.out.println(name+"result"+c);
}

}

//example :ThreadA  all the method Local variable represented as a global variable by using this 
public class ThreadA extends Thread
{
int a,b;
boolean status;
Addition aobj;
public ThreadA(int a,int b,boolean status,Addition aobj)
{
this.a=a;
this.b=b;
this.status=status;
this.aobj=aobj;
setName("A");
start();
}
public void run()
{
aobj.add(a,b,status);
}

}
//example :ThreadB  all the method Local variable represented as a global variable by using this 
public class ThreadB extends Thread
{
int a,b;
boolean status;
Addition aobj;
public ThreadB(int a,int b,boolean status,Addition aobj)
{
this.a=a;
this.b=b;
this.status=status;
this.aobj=aobj;
setName("B");
start();
}
public void run()
{
aobj.add(a,b,status);
}

}
//Main PRogram executed..........now we call all thread's ,method and execute it

public class Program
{
public static void main(String[] args)
{
Addition aobj=new Addition();
new ThreadA(12,13,true,aobj);
new ThreadB(50,13,true,aobj);
}
}


OUTPUT
java synchronized, multiple threads in java,java monitor,understanding java,java thread monitor multiple thread in java, java multiple thread, call methods in java, multithreading programming in java, multi threaded java, java 8 multithreading, java calling method, how to call methods java, threads tutorial java, multithreading java tutorial, method.invoke in java, java is multithreaded, java monitor thread, java tutorial class, multithreading code in java, multithreading tutorial java, java understanding, call in java, monitor java threads, understanding java threads, java synchronized monitor, in java class, java thread programming, thread in programming, programming threads, threads in programming, thread programming java, programming with threads, multithreading tutorial, lock thread, multithreaded programming interview questions


Comments

Popular posts from this blog

Java Server page tutorial part 3: JSP Life Cycle

JSP Life Cycle: A JSP life cycle can be defined as the entire process from its creation till the destruction which is similar to a servlet life cycle with an additional step which is required to compile a JSP into servlet. Following are the steps followed by a JSP Container: ◦ Compilation  ◦ Parsing the JSP.  ◦ Turning the JSP into a servlet.  ◦ Compiling  the servlet.  ◦ Initialization ◦ Execution ◦ Cleanup Architecture: 1.       JSP Compilation: When a browser asks for a JSP, the JSP engine first checks to see whether it needs to compile the page.  If the page has never been compiled, or if the JSP has been modified since it was last compiled, the JSP engine compiles the page. The compilation process involves three steps: ◦ Parsing the JSP. ◦ Turning the JSP into a servlet.  ◦ Compiling the servlet.  2.       JSP Initialization: When a container loads a JSP it invokes the jspInit() method before servicing any requests.  If you need to perform

OPERATION MANUAL FOR RS232 TO RS422/RS485 VICE-VERSA

INTRODUCTION: Milestone model LD-15U is a RS232,  to RS422/RS485 converter is designed for high-speed data transmission between computer system and or peripherals over Iong distance under high noise conditions. They provide dual line interface per signal. APPLICATIONS: Application for these converters can be for factory automation, Programmable logic controllers,, attendance recording systems, Barcode Readers, remote data transmission, remote terminals, EPABX etc. SPECIFICATIONS: Input: RS232-T×D, R×D, DSR (for control), GND (D9 Female connector) Output: RS422/RS485-Tx+, Tx-, Rx+. Rx-(D9 Male Connector). Each signal is protected by spike suppressor, fuse and has opto-isolation. Selection Switch: 1. Rear side has 2-way'SELECT' switch for selecting 2-Wire or 4-Wire mode in RS422/RS485 application. 2. (Optional) Rear side has 3-way'SELECT' switch for selecting AUTO Mode (No Handshake Signal), DSR+ Mode (+12V Control) and DSR-Model (-_12V Control) for co

JSTL-JSP Standard Tag Library part 1

Evolution of JSTL: Java is a flexible, general-purpose programming language, JavaServer pages(JSP) depends on java but hides some of the hard details of writing full- fledged programs.  The JSP Standards Tag Library(JSTL) builds on top of JSP, making it even easier to use. Architecture : In this figure large web applications are designed using java, JSTL, and othe components like databases. In large applications, it's common for requests from web browser to be handled by a java program called a servlet, which interacts with databases and other Java code on the server. The servlet figures out how it wants a response be printed and then forwards the user to the right JSTL page, which takes care of nothing more than presenting information. As JSP grew in popularity, it became clear that different sites' custom tags fell into familiar, frequently used patterns.  For example, many pages needed to loop over data to print tables and lists. Vendors of JSP c