gpt4 book ai didi

java - Android 中的暂停和恢复线程。工作室

转载 作者:行者123 更新时间:2023-12-01 16:25:08 30 4
gpt4 key购买 nike

我只是想创建另一个线程,我需要让它继续执行某些操作,直到我单击按钮 A,然后在单击按钮 B 时恢复,仅此而已。

Thread t = new Thread(new Runnable(){

@Override

public void run(){

while(bool) { .... }

}});

t.start();

这是我试图遵循的格式。我从 onCreate 开始,但是如何暂停和恢复线程?

最佳答案

使用wait()notifyAll()

供您理解的示例代码:

class myRunnable implements somethingRunnable {
private Object mPauseLock;
private boolean mPaused;
private boolean mFinish;

public myRunnable() {
mPauseLock = new Object();
mPaused = false;
mFinish = false;
}

public void run() {
while (!mFinish) {
// Do stuff here.

synchronized (mPauseLock) {
while (mPaused) {
try {
mPauseLock.wait();
} catch (InterruptedException e) {
}
}
}
}
}

/**
* Call this on pause.
*/
public void onPause() {
synchronized (mPauseLock) {
mPaused = true;
}
}

/**
* Call this on resume.
*/
public void onResume() {
synchronized (mPauseLock) {
mPaused = false;
mPauseLock.notifyAll();
}
}

}

希望有帮助:)

关于java - Android 中的暂停和恢复线程。工作室,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62164050/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com