JMapViewer 是线程安全的吗?
Is JMapViewer thread-safe?
我正在编写一个使用 JMapViewer 的应用程序。有几个线程(在 ThreadPoolExecutor 中执行)作用于显示的地图(主要是 creating/destroying 并更改某些 MapMarkerCircle 的颜色)。这是否违反单线程规则?我是否应该 运行 在 SwingWorker 的 done() 方法中作用于地图的代码以确保它将在事件调度线程中执行?
谢谢。
由于 setter 标记等函数在 JMapViewer
上调用 repaint()
,您需要确保它们仅在事件调度线程上调用。 repaint()
is documented 不是线程安全的,尽管它当前可以正常工作。
我正在编写一个使用 JMapViewer 的应用程序。有几个线程(在 ThreadPoolExecutor 中执行)作用于显示的地图(主要是 creating/destroying 并更改某些 MapMarkerCircle 的颜色)。这是否违反单线程规则?我是否应该 运行 在 SwingWorker 的 done() 方法中作用于地图的代码以确保它将在事件调度线程中执行?
谢谢。
由于 setter 标记等函数在 JMapViewer
上调用 repaint()
,您需要确保它们仅在事件调度线程上调用。 repaint()
is documented 不是线程安全的,尽管它当前可以正常工作。