Ios AFNetworking意外命中AFAutoPurgingImageCache中的断点

Ios AFNetworking意外命中AFAutoPurgingImageCache中的断点,ios,multithreading,debugging,memory,block,Ios,Multithreading,Debugging,Memory,Block,在将AFNetworking添加到iOS项目后,我遇到了一个奇怪的问题。AF的版本是3.2.1。如果我在AFAutoPurgingImageCache.m中的行111添加一个断点,然后运行这个项目,这个断点将奇怪地被击中。但是,如果我将此断点移动到第110行或第112行,它将不再被命中。谁能告诉我它为什么被击中?类AFAutoPurgingImageCache仅在下载图像时使用,这与我发送的请求无关 包含此特殊行的方法是 - (void)addImage:(UIImage *)image wit

在将AFNetworking添加到iOS项目后,我遇到了一个奇怪的问题。AF的版本是
3.2.1
。如果我在
AFAutoPurgingImageCache.m
中的
行111
添加一个断点,然后运行这个项目,这个断点将奇怪地被击中。但是,如果我将此断点移动到第110行或第112行,它将不再被命中。谁能告诉我它为什么被击中?类
AFAutoPurgingImageCache
仅在下载图像时使用,这与我发送的请求无关

包含此特殊行的方法是

- (void)addImage:(UIImage *)image withIdentifier:(NSString *)identifier
我已经制作了断点位置的屏幕快照。

这是命中断点时的堆栈

Thread 1 Queue : com.apple.main-thread (serial)
Thread 2 Queue : com.apple.NSURLSession-work (serial)
Thread 3 Queue : requestHeaderModificationQueue (concurrent)
#0  0x000000010df0d740 in __destroy_helper_block_e8_32s40s48s at /.../Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.m:111
#1  0x00007fff51a759ba in _Block_release ()
#2  0x000000010dfa9e8e in _dispatch_client_callout ()
#3  0x000000010dfba2a0 in _dispatch_lane_concurrent_drain ()
#4  0x000000010dfb134c in _dispatch_lane_invoke ()
#5  0x000000010dfac0ff in _dispatch_queue_override_invoke ()
#6  0x000000010dfbb399 in _dispatch_root_queue_drain ()
#7  0x000000010dfbbca6 in _dispatch_worker_thread2 ()
#8  0x00007fff51c089f7 in _pthread_wqthread ()
#9  0x00007fff51c07b77 in start_wqthread ()
Thread 4Thread 5com.apple.uikit.eventfetch-thread (6)Thread 7Thread 8Thread 9
使用AF的代码只是在
didfishlaunchingwithoptions

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    static AFHTTPSessionManager* manager = nil;
    manager = [[AFHTTPSessionManager alloc] init];
    
    id<AFURLResponseSerialization> responseSerialization = [AFJSONResponseSerializer serializer];
    manager.responseSerializer = responseSerialization;
    
    [manager GET:@"https://www.google.com/" parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        NSLog(@"ok");
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        NSLog(@"error");
    }];
    
    return YES;
}
-(BOOL)应用程序:(UIApplication*)应用程序使用选项完成启动:(NSDictionary*)启动选项{
//应用程序启动后自定义的覆盖点。
静态AFHTTPSessionManager*manager=nil;
manager=[[AFHTTPSessionManager alloc]init];
id responseSerialization=[AFJSONResponseSerializer序列化程序];
manager.responseSerializer=responseSerialize;
[经理获取:@”https://www.google.com/参数:无进度:无成功:^(NSURLSessionDataTask*\u非空任务,id\u可空响应对象){
NSLog(@“正常”);
}失败:^(NSURLSessionDataTask*_可空任务,NSError*_非空错误){
NSLog(@“错误”);
}];
返回YES;
}