Я читал это:
Если вы когда-либо создавали дополнительный поток в своем приложении, вам необходимо предоставить его собственный пул автозаполнения. Пулы Autorelease и объекты, которые они содержат, обсуждаются далее в
в кулинарной книге разработчика iOS 5.
Я собираюсь с ARC. Я создаю много фоновых потоков, и кажется, что я в порядке. Ни один из моих фоновых потоков не работает. Будут ли выпущены все эти объекты, скажем, пул авторефератов основной нити? Или что?
Это то, что я делаю, чтобы вызвать фоновый поток:
+(void)doBackground:(void (^)())block
{
//DISPATCH_QUEUE_PRIORITY_HIGH
//dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND,0), ^{
dispatch_async(dispatch_get_global_queue(-2,0), ^{
block();
});
}
Должен ли я изменить это на
+(void)doBackground:(void (^)())block
{
//DISPATCH_QUEUE_PRIORITY_HIGH
//dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND,0), ^{
dispatch_async(dispatch_get_global_queue(-2,0), ^{
@autoreleasepool{
block();
}
});
}