Я разрабатываю приложение с использованием ARC При профилировании моего приложения в приборах для утечки памяти он показывает утечки на следующую функции:инструментов показывают утечку в main.m (Xcode 4.3.1)
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
int main(int argc, char *argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
делает это указать проблему где-то еще в моем коде?
Это трассировки стека
0 libsystem_c.dylib malloc
1 libsystem_c.dylib strdup
2 libnotify_sim.dylib token_table_add
3 libnotify_sim.dylib notify_register_mach_port
4 libnotify_sim.dylib notify_register_dispatch
5 CoreFoundation _CFXNotificationRegisterObserver
6 CoreFoundation CFNotificationCenterAddObserver
7 UIKit -[UIScrollView(Static) _startTimer:]
8 UIKit -[UIScrollView _endPanWithEvent:]
9 UIKit -[UIScrollView handlePan:]
10 UIKit _UIGestureRecognizerSendActions
11 UIKit -[UIGestureRecognizer _updateGestureWithEvent:]
12 UIKit -[UIGestureRecognizer _delayedUpdateGesture]
13 UIKit ___UIGestureRecognizerUpdate_block_invoke_0541
14 UIKit _UIGestureRecognizerApplyBlocksToArray
15 UIKit _UIGestureRecognizerUpdate
16 UIKit -[UIWindow _sendGesturesForEvent:]
17 UIKit -[UIWindow sendEvent:]
18 UIKit -[UIApplication sendEvent:]
19 UIKit _UIApplicationHandleEvent
20 GraphicsServices PurpleEventCallback
21 CoreFoundation __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__
22 CoreFoundation __CFRunLoopDoSource1
23 CoreFoundation __CFRunLoopRun
24 CoreFoundation CFRunLoopRunSpecific
25 CoreFoundation CFRunLoopRunInMode
26 GraphicsServices GSEventRunModal
27 GraphicsServices GSEventRun
28 UIKit UIApplicationMain
29 MyProject/main.m:16
30 MyProject start
Есть ли у вас какие-либо конкретные журналы и коды ошибок? , так как вы не писали эту функцию самостоятельно, проблема в том, что она лежит в вашем собственном коде =) –
Помогает ли эта втекание в инструменты? Я получаю около 10 записей, подобных этому за двухминутный запуск моего приложения: просочившийся объект: Malloc 48 байт, ответственная библиотека: libsystem_c.dylib Ответственный фрейм: strdup. –
, вы должны иметь возможность щелкнуть по адресу этого блока malloc и получить от него трассировку стека, которая поможет вам понять, откуда она взялась. , но, если быть очень честным - 10x 48 байт утечки не является концом мира, если он остается на этом;) –