tap(2)
-
[C#] 비동기 프로그래밍: Task.Run과 바로 호출의 차이점
오랜만에 글 한편 쓴다 오늘은 C# 비동기 프로그래밍의 핵심 개념 중 하나인 Task.Run의 사용과 그냥 메서드를 직접 호출하는 방법의 차이점에 대해 이야기해볼려고 하는데 이거 존나 중요하니까 잘 보도록 하자 public COMPortExplorerVM() { Task.Run(async () => await MonitorComportStatusChangesAsync()); B(); } public COMPortExplorerVM() { MonitorComportStatusChangesAsync(); B(); } 위 두 코드는 어떤 차이점이 있을까? 아참 MonitorComportStatusChangesAsync() 의 구현부는 아래와 같다고 가정하자. public async Task MonitorCom..
2023.10.24 -
[C#] 비동기 프로그래밍(APM)에 대해 알아보자
이 글을 읽기전에 필요한 기초 지식은 아래와 같으니 검색을 통해 먼저 숙달하고 본 포스팅을 읽도록 하자 블로킹 vs 논블로킹 함수 동기 vs 비동기 프로그래밍 이 글을 작성하는 시점에서 C#의 비동기 프로그래밍 기술은 크게 APM (Asynchronous Programming Model)과 EAP(Event-based Asynchronous Pattern) 그리고 마지막으로 TAP (Task-based Asynchronous Programming) 로 나눌 수 있다. 이 중 현재 시점에서 C#의 가장 진보된 비동기 프로그래밍 스킬하면 TAP 인데 이번 포스팅에서는 APM에 대해 우선 알아보도록 하자. APM은 .NET framework 1.0 시절부터 나온 닷넷의 비동기 프로그래밍 기술 중 원조격 기술인..
2023.03.21