ios GCD

1057 단어
다중 스레드 조작은 시스템이 일정 시간 동안 실행해야 하는 일부 조작을 다른 스레드 조작에 넣어서 주 스레드를 해방시켜 다른 조작을 할 수 있게 한다.이로써 사용자 체험을 더욱 원활하게 하고 불필요한 기다림을 줄였다.
GCD는 ios에서 비교적 우수한 다중 스레드 처리 조작으로 다음에 GCD에 대해 간단하게 소개한다.
1. 큐 만들기
글로벌 큐:
    dispatch_queue_t q = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

직렬 대기열:
    dispatch_queue_t q = dispatch_queue_create(NULL, DISPATCH_QUEUE_CONCURRENT);

그룹 만들기
    dispatch_group_t g = dispatch_group_create();

그룹 내 작업이 모두 완료되면 알림:
    dispatch_group_notify(g, q, ^{
        NSLog(@"     ");
    });

2. 비동기 실행 코드:
    dispatch_group_async(g, q, ^{
        [self gcdScaleTicketsWithName:@"gcd - 3"];
    });

마스터 스레드 획득:
    dispatch_get_main_queue()

동기화 실행 코드(UI의 주 스레드 대기열 업데이트 작업은 여기서 수행):
    dispatch_sync(dispatch_get_main_queue(), ^{
                    [self appendContentWithString:str];
                });

좋은 웹페이지 즐겨찾기