[번역] iOS: 왜 UI는 메인 스레드에서만 업데이트를 해야 할까? (Dywanedu)
개발을 하는 동안에, 우리는 종종 UIKit 컴포넌트를 백그라운드 스레드(Background Thread)에서 호출해 본 적이 있습니다. 백그라운드 네트워크 콜백에서 imageView.image = anImage 구문을 실행하거나, UIApplication.sharedApplication을 백그라운드 스레드에서 호출하는 일을 꼽을 수 있습니다. 이러한 일이 발생하면, 런-타임 에러가 발생하고, 우리는 해당 에러를 고치게 됩니다. 한번 생각해봅시다. 왜 UI는 메인 스레드에서만 업데이트를 해야 할까요? UI를 백그라운드 스레드에서 업데이트하게 된다면 어떤 일이 벌어질까요? 메인 스레드를 블록킹(Blocking)하는 걸 막기 위해 UI를 백그라운드 스레드에서 업데이트하는 게 더 좋지 않을까요? 본 글은 이 질문을 기초로 하고 있습니다. ...