假设我有一个函数 refresh() 调用另外两个函数,一个是需要从 EDT 运行的长时间运行 clearData() 函数,另一个是在 EDT 中运行并重绘的快速函数 repaint()图形用户界面组件。
refresh()
{
clearData(); //off the EDT function
repaint(); //in the EDT function
}
当需要运行像 clearData() 这样的较长操作时,处理重绘的正确方法是什么。一旦以正确的方式完成,是否让 clearData 线程运行 repaint() ?如何才能做到这一点?