Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How pause and then resume a thread?

I state that I read about thread, but I've never used. So I ask to you :)

I have two thread: A and B, where A manages the GUI, and B manages the logic.

I would start with A.

Then when A draw the GUI, I would pause it, to wait B that reach a point X into run method.

And when B reach the X point into run method, I pause B, and resume A.

A and B share some variable to manage the GUI, and the logic...

Can I do it? if yes, how? :)

like image 987
Teo Avatar asked May 26 '13 10:05

Teo


People also ask

How do you pause a resume and thread?

Methods Used:sleep(time): This is a method used to sleep the thread for some milliseconds time. suspend(): This is a method used to suspend the thread. The thread will remain suspended and won't perform its tasks until it is resumed. resume(): This is a method used to resume the suspended thread.

How do I pause a current thread?

sleep() method can be used to pause the execution of current thread for specified time in milliseconds. The argument value for milliseconds can't be negative, else it throws IllegalArgumentException .

Can a thread be restarted?

Once a thread enters dead state it cannot be restarted.


1 Answers

Using wait() and notify() methods:

wait() - Causes the current thread to wait until another thread invokes the notify() method or the notifyAll() method for this object.

notify() - Wakes up a single thread that is waiting on this object's monitor.

like image 151
Dineshkumar Avatar answered Oct 01 '22 02:10

Dineshkumar