问题标签 [progressmonitor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jgit - JGit ProgressMonitor 报告错误的任务数
我正在使用 JGit 库来实现基本的 git 操作。
Javadoc ProgressMonitor
:
http: //archive.eclipse.org/jgit/docs/jgit-2.0.0.201206130900-r/apidocs/org/eclipse/jgit/lib/ProgressMonitor.html
在这里,你可以看到我使用ProgressMonitor
for时的日志git clone
(最后实现):
- 日志开始
- 总任务:2
- 任务开始:远程:枚举对象的总工作量:0
- 任务开始:远程:计算总工作量的对象:56
- 任务开始:远程:压缩对象总工作量:46
- 任务开始:接收总工作量的对象:56
- 任务结束:接收对象
- 任务开始:解决总工作量的增量:1
- 任务结束:解决增量
- 任务开始:签出文件的总工作量:23
- 任务结束:签出文件
- 日志结束
现在的问题:
根据方法start
,有 2 个任务,但方法beginTask
报告 6 个任务开始,方法endTask
报告 3 个任务结束......有人可以向我解释这个魔法吗?克隆过程本身已成功完成。
下面你可以看到ProgressMonitor
写入日志的方法的实现。
java - IProgress Monitor 总是给出 java.util.ConcurrentModificationException 和 InvocationTargetException 给出 Invalid Thread Access
我写了 2 个进度监视器,
实现第一次调用时,我在后台收到 ConcurrentModificationException 。但进度监视器我可以看到工作正常,数据也正在加载/更新。
当我在后台得到 ConcurrentModificationException 时实现第二个我也得到 InvocationTargetException 原因是说
无效的线程访问
请注意,我在第一个进程对话框中使用 Display.getDefault().asyncExec,在第二个对话框中使用 Display.getDefault().syncExec。
请提出这里缺少的内容,因为监视器和数据也根据要求更新/加载,但遗憾的是得到了这个例外。
第一个进度监视器 -
第二个进度监视器 - (加载第一个后在同一个 GUI 上)