什么可能导致有关MKTileCache的以下错误?

时间:2011-03-03 16:50:15

标签: iphone cocoa-touch mkmapview

在控制台中,我在应用程序运行时看到以下错误:

  

void - [MKTileCache   同步(MKTileCache *   objc_selector *)在调用时调用   背景

这个错误意味着什么,我该如何预防呢?

2 个答案:

答案 0 :(得分:1)

您可能正在从后台线程调用MKMapView上的用户界面功能。应从主线程调用所有用户界面函数;您可以使用后台线程中的performSelectorOnMainThread:withObject:waitUntilDone:来指示主线程在必要时执行相应的选择器。

答案 1 :(得分:0)

不一定,@ Anomie。 “背景”不仅仅指代主(UI)线程,而不是背景(工作者)线程。它也可以指代背景的应用程序(不是活动的应用程序)。我有一个使用 MapKit 的应用,它不支持多任务处理(退出时关闭)。当我关闭我的应用程序时,我总是看到这个错误。直到应用程序离开“前景”才会出现。在我的情况下,我的一些代码从工作者线程调用MapKit UI函数肯定是

所以,回答这个问题......我也看到了这一点。它似乎不是一个问题。我没有收到Apple或其他任何人的任何投诉。

在退出之前,我已尝试将我的MapView的委托,MapView,CLLocationManager的委托和CLLocationManager取出。这些解决方案都没有消除这个消息。