在Java中,有几种常见的方式可以控制多线程的启动与停止。
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// 线程执行的代码
}
});
thread.start(); // 启动线程
thread.interrupt(); // 停止线程
Runnable runnable = new Runnable() {
@Override
public void run() {
// 线程执行的代码
}
};
Thread thread = new Thread(runnable);
thread.start(); // 启动线程
thread.interrupt(); // 停止线程
volatile boolean isRunning = true; // 共享变量
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
while (isRunning) {
// 线程执行的代码
}
}
});
thread.start(); // 启动线程
isRunning = false; // 停止线程
需要注意的是,以上方法都是通过协作的方式来控制线程的启动与停止,即线程自己决定何时退出。另外,停止线程的方法不是强制终止线程,而是通过设置标志位或发送中断信号的方式来请求线程停止。线程在合适的时机检查这些条件,并主动退出循环,从而停止线程的执行。