我的应用程序当前有一个有趣的问题。这个问题与OpenMap有关,但可能适用于任何第3方库。

在此特定示例中,我们的代码需要创建我们的OpenMap工具并加载其图层(在后台),并截取特定兴趣点的屏幕截图。

但是,问题在于OpenMap库创建了自己的线程来加载这些图层,因此返回我们的代码以立即截取屏幕截图,并且大多数情况下屏幕截图为空白或不完整。

我们的应用程序的伪代码是这样的:

check database for layers
load layers using OpenMap
take screenshot of map at point of interest


我假设某种类型的线程管理是有序的,但是当库使用自己无法访问的线程时,该怎么办呢?另外,OpenMap没有返回或标志来指示这些线程已完成(我已经看到)。

有什么建议?

谢谢

最佳答案

我不了解OpenMap,但通常的方法是在第3方库中注册一些回调。在Java中,这意味着实现接口并在您调用API方法的对象上注册为侦听器。
您(几乎?)永远不必(或不应该)对库的内部线程处理有所了解!

10-08 00:22