冲突现象:
只限linux平台,windows无此现象
打开eclipse swt3.3开发的界面,触发一个按钮激活quartz(开源的日程调度任务工具包)线程,
当关闭界面时,界面发生死锁状态,关闭不了解决方案:
利用多线程来解决,利用另一个UI线程关闭界面
Runnable r = new Runnable() {
public void run() {
shell.dispose();//关闭界面
Runnable r2 = new Runnable() {//嵌套另一个线程
public void run() {
BackupData.backupAutomatic(backupFilePath, isEncrypt,pass2);
}
};
Display.getDefault().syncExec(r2);
}
};
Display.getDefault().asyncExec(r);
} 方案缺点:
在触发quartz线程时,程序自动关闭界面,
如果大家有更好的办法,请不吝赐教!
只限linux平台,windows无此现象
打开eclipse swt3.3开发的界面,触发一个按钮激活quartz(开源的日程调度任务工具包)线程,
当关闭界面时,界面发生死锁状态,关闭不了解决方案:
利用多线程来解决,利用另一个UI线程关闭界面
Runnable r = new Runnable() {
public void run() {
shell.dispose();//关闭界面
Runnable r2 = new Runnable() {//嵌套另一个线程
public void run() {
BackupData.backupAutomatic(backupFilePath, isEncrypt,pass2);
}
};
Display.getDefault().syncExec(r2);
}
};
Display.getDefault().asyncExec(r);
} 方案缺点:
在触发quartz线程时,程序自动关闭界面,
如果大家有更好的办法,请不吝赐教!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货