페이지

2013년 4월 19일 금요일

GCD(Grand Central Dispatch) 코드 템플릿



오래 걸리는 작업을 메인스레드에서 폴그라운드로 그냥 돌리면 블락(멍때림)된다.
시간이 걸리는 계산이나 디스크에 쓰기/읽기 하는 경우 등의 무거운 작업을 돌리는 경우,
GCD(또는 NSOperationQueue)를 사용하자.
템플릿은 다음과 같다:



dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
    // 백그라운드 스레드로 진입하여 오래 걸리는 작업을 실시한다.

    dispatch_async(dispatch_get_main_queue(), ^{
        // 메인스레드의 UI를 변경하는 작업

    });
});


댓글 없음:

댓글 쓰기