[英]How to Suspend and Resume Threads in android?
我剛剛注意到android線程中的暫停和恢復已被棄用。 這個是什么工作或如何在android中暫停和恢復一個線程?
實際上,在隨機點暫停或停止線程是一個不安全的想法,這就是為什么這些方法被棄用的原因。
在我看來,你能做的最好的事情是在你的線程的run
方法中有一些固定的暫停點,並使用wait
停在那里:
class ThreadTask implements Runnable {
private volatile boolean paused;
private final Object signal = new Object();
public void run() {
// some code
while(paused) { // pause point 1
synchronized(signal) signal.wait();
}
// some other code
while(paused) { // pause point 2
synchronized(signal) signal.wait();
}
// ...
}
public void setPaused() {
paused = true;
}
public void setUnpaused() {
paused = false;
synchronized(signal) signal.notify();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.