我试图在阅读 excel 文件时显示进度。我共享一个包含最大行号和读取的最后一个行号的对象。每 150 行我将值保存在我的对象中,我让它等待并且我的读取停止,直到对象被解锁。
在我的对话窗口中,我尝试ProgressBar
使用对象中的值更新 using syncExec 或 asyncExec 方法。并且在调用方法后对象被解锁。
我知道这些方法正在等待最“合适”的场合在那里运行可运行文件。但是我似乎不明白的是,如果在调用这些方法时没有任何运行,为什么不执行这些方法?
我的实际情况是,asyncExec 仅在读取过程结束时更新 ProgressBar,synExec 挂起应用程序,因为它在 Object#wait 运行时无法执行。
感谢阅读,更感谢您的回答。