[WinForm] UI Freeze 해결 해주는 비동기 호출
지금당장해
10년 전이나 지금이나 기업용 솔루션 개발을 하는 일이 어찌 보면 비슷한 패턴의 연속이다. 다만 나를 비롯한 개발자들은 이를 좀더 간결한 코드로 만들어 내느냐에 노력 해온거 같다. 3-tier 구조 역시 그러하다. 물론 오늘 다룰 주제가 3-tier 구조에 국한되는 이야기는 아니다. 3 tier던 2 tier던 UI에서 서비스 호출 또는 DB Access를 하고 나서 UI가 할일은 대기 하는 것이다. 결과가 올때 까지 무작정 (사실은 정해진 시간 내에서 기다린다. 우린 이것을 보통 Timeout이라고 한다. ) 기다린다. 이렇게 호출을 해놓고 기다리면 화면이 얼어 버린다. 얼어 버린 화면을 이리 끌고 저리 끌고 해봐야 화면은 아무런 응답을 하지 못한다. 왜 이러냐면 UI를 가지고 있는 윈도우 프로그램은 ..