Xcode泄漏工具卡在MapkKit/CllocationManager Ios8上

Xcode泄漏工具卡在MapkKit/CllocationManager Ios8上,ios,xcode,memory-leaks,Ios,Xcode,Memory Leaks,我在使用Xcode工具查找应用程序漏洞时遇到了一个奇怪的问题。 除使用mapView的屏幕外,我的所有屏幕都可以使用该工具正常工作(例如,我有一些注册屏幕,如果用户登录mapView屏幕打开,则用户进入mapView屏幕)。我认为这个问题在某种程度上与CLLocationManager有关 但我不确定,因为应用程序只是在使用泄漏工具时卡住了。 我从我的设备收到以下日志: timed[53] <Notice>: (Note ) CoreTime: Received time 10/21

我在使用Xcode工具查找应用程序漏洞时遇到了一个奇怪的问题。 除使用mapView的屏幕外,我的所有屏幕都可以使用该工具正常工作(例如,我有一些注册屏幕,如果用户登录mapView屏幕打开,则用户进入mapView屏幕)。我认为这个问题在某种程度上与CLLocationManager有关 但我不确定,因为应用程序只是在使用泄漏工具时卡住了。 我从我的设备收到以下日志:

timed[53] <Notice>: (Note ) CoreTime: Received time 10/21/2014 15:54:04±0.00 from "GPS" 
timed[53] <Notice>: (Note ) CoreTime: Want active time in 3332.92min. Need active time in 
8332.92min. Remaining retry interval: 0.000000min.
<Notice>: (Note ) CoreTime: Received time 10/21/2014 15:54:09±0.00 from "GPS"
<Notice>: (Note ) CoreTime: Want active time in 3332.82min. Need active time in 8332.82min.        
CommCenter[69] <Error>: throttleCallBack(): Clearing throttle timer on context ID 0
CommCenter[69] <Error>: throttleCallBack(): Clearing throttle timer on context ID 1
CommCenter[69] <Error>: throttleCallBack(): Clearing throttle timer on context ID 2
<Error>: throttleCallBack(): Clearing throttle timer on context ID 3
timed[53] <Notice>: (Note ) CoreTime: Received time 10/21/2014 15:54:14±0.00 from "GPS"
 timed[53] <Notice>: (Note ) CoreTime: Want active time in 3332.75min. Need active time in     
 CommCenter[69] <Error>: throttleCallBack(): Clearing throttle timer on context ID 0
 CommCenter[69] <Error>: throttleCallBack(): Clearing throttle timer on context ID 1

CoreLocation: Discarding message for event 0 because of too many unprocessed messages
timed[53]:(注)核心时间:从“GPS”接收的时间2014年10月21日15:54:04±0.00
计时[53]:(注意)CoreTime:希望活动时间为3332.92分钟。需要活动时间吗
8332.92分钟。剩余重试间隔:0.000000min。
:(注)核心时间:从“GPS”接收的时间2014年10月21日15:54:09±0.00
:(注意)CoreTime:希望活动时间为3332.82分钟。需要8332.82分钟的活动时间。
CommCenter[69]:throttleCallBack():清除上下文ID 0上的节流计时器
CommCenter[69]:throttleCallBack():清除上下文ID 1上的节流计时器
CommCenter[69]:throttleCallBack():清除上下文ID 2上的节流计时器
:throttleCallBack():清除上下文ID 3上的节流计时器
定时[53]:(注)CoreTime:从“GPS”接收到的时间2014年10月21日15:54:14±0.00
计时[53]:(注意)CoreTime:希望活动时间为3332.75分钟。需要活动时间吗
CommCenter[69]:throttleCallBack():清除上下文ID 0上的节流计时器
CommCenter[69]:throttleCallBack():清除上下文ID 1上的节流计时器
CoreLocation:由于未处理的消息太多,正在丢弃事件0的消息
根据该链接,我认为最后一行是最重要的:
是的,我的locationManager在主线程上运行(它在调试模式下运行得很好,没有它)

我也尝试在模拟器(它也卡住了,我想有一些不同的原因,但我需要主要在设备上测试它,因为我的应用程序严重依赖于用户位置)
我将所有可能的配置设置为在我的方案中调试。
我试图重新启动设备。
我试过iphone5s和iphone4。 (我使用Xcode6 Ios8)

有没有人有类似的问题或想法我可以尝试什么?

非常感谢。

最后我发现了问题。这个问题很愚蠢,我相信没有多少人会有这种问题,但我会发布我愚蠢的错误。 当我开发这个应用程序的时候,我在那里包括了很多日志(一些来自服务器的响应),随着时间的推移,我忘记了删除它们(当然在发布之前我会删除)。 这就是应用程序在使用工具运行时实际卡住的地方。 我从苹果支持部收到的回复是:

由于NSLog也在主线程上写入,它同时阻塞了地图显示和位置管理器。 需要记住的一件事是,尽管NSLog通常用于打印调试信息,但这不是它真正的工作。 如果您查看基础框架参考文档,NSLog被描述为:将错误消息记录到Apple系统日志设施。 因此,这是一个非常重要的调用,对应用程序的性能影响很大

事实上,当我运行“时间分析器”时,我注意到在某些方法中运行Nslog的时间百分比相当高