Pausing/ Resuming Thread Using Tool From java.util.concurrent.

Y

yccheok

Hi, may I know is there any technique avaible, for pausing/ resuming
execution of the thread, which is inside while loop, by using tools
from java.util.concurrent.

1) I do not want to use busy pooling, it is ugly and wasting CPU
resource.

2) Is the following a proven bug free method?

public synchronized void pauseWork() {
request = PAUSE;
notify();
}

public synchronized void resumeWork() {
if (request == PAUSE) {
request = RESUME;
notify();
}
}

private void waitIfPauseRequest()
throws InterruptedException {

synchronized (this) {
if (request == PAUSE) {
while (request != RESUME) {
wait();
}

request = NORMAL;
}
}
}
 
P

Piotr Kobzda

yccheok said:
Hi, may I know is there any technique avaible, for pausing/ resuming
execution of the thread, which is inside while loop, by using tools
from java.util.concurrent.

See: java.util.concurrent.locks.LockSupport


piotr
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top