C#/C# 문법 범범조조 2022. 5. 8. 17:47
참고 C# 동시성 프로그래밍 문제점 비동기적으로 일정 시간을 기야려야 합니다. 단위 테스트 또는 재시도 지연을 구현할 때 흔한 상황입니다. 간단한 타임아웃을 코딩할 때 필요하기도 합니다. 해법 Task 형식에 들어 있는 정적 메서드 Delay는 지정한 시간 뒤에 완료하는 작업을 반환합니다. 다음 예제는 비동기적으로 완료하는 작업을 정의합니다. 비동기 작업의 구색을 갖추려면 동기적 성공, 비동기적 성공은 물론 비동기적 실패도 시험해야 합니다. 다음 예제는 비동기적 성공 사례에 쓰이는 작업을 반환합니다. async Task DelayResult(T result, TimeSpan delay) { await Task.Delay(delay); return result; } 지수 백오프는 재시도 사이의 지연 시간을..
더 읽기
C# 범범조조 2022. 5. 8. 17:31
참고 C# 동시성 프로그래밍 비동기 프로그래밍 이점 비동기 프로그래밍은 크게 두 가지 이점이 있습니다. 첫 번째로 최종 사용자용 GUI 프로그램은 비동기 프로그래밍을 통해 응답성을 확보할 수 있습니다. 작업을 실행하는 동안 일시적으로 GUI가 잠기는 프로그램을 사용해 보았을 것입니다. 비동이 프로그램이라면 작업 중에도 사용자 입력에 반응할 수 있습니다. 두 번째로 서버 프로그램은 비동기 프로그래밍을 통해 규모를 변경할 수 있습니다. 서버 애플리케이션은 스레드 풀만 사용해도 어느 정도 규모를 변경할 수 있지만, 비동기 서버 애플리케이션은 대개 훨씬 큰 단위로 규모를 변경할 수 있습니다. 비동기 프로그래밍 특징 위에서 설명한 비동기 프로그래밍의 두 가지 이점은 모두 비동기 프로그래밍이 스레드를 가로막지 않고..