GCD dispatch_async и NSURLConnection

Мне нужен был быстрый и простой способ получить данные с URL без необходимости возиться с делегатами .

Is что-то не так?

// Use gcd
dispatch_queue_t queue = dispatch_queue_create("com.dowork", 0);
dispatch_queue_t main = dispatch_get_main_queue();

//  do the long running work in bg async queue
// within that, call to update UI on main thread.
dispatch_async(queue, ^{ 

   // Do work in the background
    NSData *response = [NSURLConnection sendSynchronousRequest:serviceRequest returningResponse:&serviceResponse error:&serviceError];

   dispatch_async(main, ^{ 

       // Update UI
       self.data = response;
       [self.tableView reloadData];


   });//end
});//end

Я думал, что где-то давно читал, что использование синхронного метода NSURLConnection в фоновом потоке может вызвать утечку памяти. Верно ли это?

Есть ли проблемы с коды, которые там размещены? Возникли проблемы с назначением данных в self.data внутри блока?

5
задан Nic Hubbard 23 February 2012 в 10:00
поделиться