Chamando o sono (5); e a atualização do campo de texto não está funcionando

Estou tentando adormecer um método (veja abaixo), mas em vez dotextLabel mudando do valor demyTextLabelString, aguardando 5 segundos, mudando para "dormir 5 funcionou", aguardando 5 segundos e, finalmente, mudando para "dormir 5 funcionou pela segunda vez" .... é apenas o valor demyTextLabelString, aguarda 10 segundos e depois muda para "suspensão 5 funcionou segunda vez".

- (void)textLabelChanger:(id)sender {

    NSString *myTextLabelString = [NSString stringWithFormat:@"%d", gameCountDown];    

    textLabel.text=myTextLabelString;
    sleep(5);
    textLabel.text=@"sleep 5 worked";
    sleep(5);
    textLabel.text=@"sleep 5 worked second time round";
    return;
}

questionAnswers(4)

yourAnswerToTheQuestion