Как сказал @MarkGranoff, весь пользовательский интерфейс должен обрабатываться в основном потоке. Вы можете сделать это с executeSelectorOnMainThread, но с GCD это будет примерно так:
- (IBAction)dbSizeButton:(id)sender {
dispatch_queue_t getDbSize = dispatch_queue_create("getDbSize", NULL);
dispatch_queue_t main = dispatch_get_main_queue();
dispatch_async(getDbSize, ^(void)
{
dispatch_async(main, ^{
[_dbsizeLable setText:[dbmanager getDbSize]];
});
});
// release
}