0
我下面寫的代碼XTEND:如何取消進度監視器eclipse4.4
void doMyMethod(IProgressMonitor monitor, Collection myCollection) {
val subMonitor = SubMonitor.convert(monitor, myCollection.size());
subMonitor.setTaskName("My Task Name...");
myCollection.forEach [ element |
if(subMonitor.canceled || monitor.canceled)
{
throw new OperationCanceledException
}
subMonitor.worked(1)]
}
意味着當用戶從UI取消進度監視器停止進度監視器。但沒有工作。我正在關注Using prograess monitor,它說在eclipse 4.6中不能使用monitor.split。 奇怪的是,如果我把一個調試點@ subMonitor.worked(1)並在調試模式下運行eclipse,它會按預期工作,並取消監視器,如果從UI中取消,但如果刪除調試點則不工作。任何想法都會非常有幫助,因爲如果調試模式起作用,我的想法仍然不足,它也應該沒有它!
嗯,這應該無法在Eclipse火星完全運行,因爲副監視器類沒有在該版本中存在。我一直髮現進度監視器取消操作非常緩慢。 –
對不起,我有Luna的目標。所以SubMonitor只能來自Luna。讓我編輯我的問題比..感謝輸入,greg-449 – lifeline2