MKMapSnapshotter使用了大量的CPU和RAM

Mor*_*ris 10 mapkit ios mkmapsnapshotter

MKMapSnapshotter在模拟器中似乎使用高达2GB的RAM,并触发内存警告并在设备上长时间挂起我的应用程序.我不确定我的设置的哪一部分导致了这个问题.

当同时检索多个图像时会出现这种巨大的用法,但即使一个接一个地检索多个图像,似乎也会使用大量的RAM,峰值时为600MB,并且使用高达190%的CPU占用CPU.我已经尝试删除所有其他逻辑,甚至在请求后保存图像,并且仍然会出现巨大的RAM和CPU使用率.

这不是故意的.必须有一些我没有设置的东西,导致这个失控的资源占用.这是我的选项代码:

    MKMapSnapshotOptions* options = [MKMapSnapshotOptions new];
    options.region = MKCoordinateRegionMake(CLLocationCoordinate2DMake(self.lat.doubleValue, self.lng.doubleValue), MKCoordinateSpanMake(0.01, 0.01));
    options.scale = 2.0;
    options.size = CGSizeMake(300, 44);
    options.showsBuildings = NO;

    MKMapSnapshotter* snapshotter = [[MKMapSnapshotter alloc] initWithOptions:options];
    [snapshotter startWithCompletionHandler:^(MKMapSnapshot *snapshot, NSError *error) {
        // even if I do nothing in here, it still goes crazy
    }];
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?