我试图在应用程序中创建一个线程。这是代码:
private class GetFileTask extends Thread {
private volatile boolean mKeepRunning = false;
public GetFileTask() {
super("GetFileTask");
}
/** Cancel task */
public void cancel() {
mKeepRunning = false;
interrupt();
}
@Override
public void run() {
mKeepRunning = true;
while (true) {
try {
doTask();
Sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
if (!mKeepRunning) {
break;
}
}
}
private void doTask() {
}
}
我试图让用户取消下载(取消线程),然后再次从零开始下载(重新启动线程)。我阅读了 android sdk 文档,我知道我不应该使用暂停/暂停。我试图通过调用取消线程cancel();
并尝试通过调用重新启动线程run();
但是,当我调用时我的应用程序挂起run();
那么,基于上面的代码示例,线程的正确方法是stop
什么restart
?