我在执行过程中尝试停止进程时遇到问题。 我的流程由 csv 解析器组成。我的目的是创建一个启动按钮来运行 csv 解析器,并创建一个停止按钮来停止 csv 解析器。我使用了一个函数system.exit(),整个程序关闭。我想做的只是中断 csv 函数。当我使用 thread.sleep() 时,停止按钮卡在那里,无法按启动按钮。非常感谢!
private void stopActionPerformed(java.awt.event.ActionEvent evt) {
st = 0;
if (st = 0)
{ }
}
private void startActionPerformed(java.awt.event.ActionEvent evt) {
st =1;
if (st = 1){
Start1 test = new Start1();
test.sbutton();}
最佳答案
使用Thread.sleep(时间) 但请记住在单独的线程中运行 csv 解析器。如果您只有一个线程,那么整个应用程序都会挂起。 例如:
class ParserStarter implements Runnable{
void someMethodWhereYouStartParser(){
Thread t=new Thread(this);
t.start();
}
public void run(){
CSVParser cp=new CSVParser();
}
}
class CSVParser{
//here you can write your start/stop logic using Thread.sleep();
}
关于java Swing 停止函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9188855/