async / await 의 사용

리얼큐·2023년 4월 18일
  • async 키워드는 비동기작업을 수행하는 메소드에 쓰는 키워드이다.
public static async void Foo() { ... };
  • async 키워드를 사용할 메소드는 반환형식이 void, Task, Task 중 어느 하나인 것이 일반적이다.

  • async 키워드가 붙어있는 메소드의 내부에서 await 연산자를 하나 이상 사용한다.

  • await 연산자는 비동기작업을 수행하는 Task 를 피연산자로 한다.

Task<int> task = Task.Run( () => {
  return 10;
});
int result = await task;
  • await 연산자는 호출자를 블로킹하지 않는다.
  • 반환값이 있는 메소드에 async / await 를 이용하는 경우
public static async Task<int> Foo() {
  int n = await Task.Run( () => {
  	return 10;
  }
  return n;
}

0개의 댓글