Run Loop란런 루프(Run loop)는 스레드에 전달된 소켓, 파일, 키보드, 마우스 등의 입력과 타이머 객체를 처리하는 객체이다. 런 루프를 사용해 스레드의 활동 상태를 조정할 수 있으며 이것이 런 루프가 고안된 이유이다. 모든 스레드는 생성될 때 자신만의 런 루프를 갖는다. 메인 스레드에 생성된 메인 런 루프는 생성과 동시에 자동으로 실행(Start)되지만 그 외 스레드의 런 루프는 자동으로 실행되지 않는다. 따라서 개발자는 적절한 타이밍에 직접 런 루프를 실행시켜 이벤트를 처리해야 한다. 입력 이벤트의 종류런 루프는 2가지 입력 이벤트를 받는다. Input source는 다른 스레드나 애플리케이션에서 비동기적으로 전달된 이벤트이다. Timer source는 예정된 시간 또는 반복된 Interv..