아마도 이것은 방법이 async
으로 표시 될 때 편집 중에 어떤 일이 발생하는지에 대한 나의 이해 부족 때문입니다. 그러나이 방법은 왜 컴파일됩니까?이 비동기 메서드에 컴파일 오류가없는 이유는 무엇입니까?
public async Task<bool> Test()
{
return true;
}
여기에서 설명을 찾고 있으므로 어떤 일이 벌어지고 있는지 더 잘 이해할 수 있습니다. Task
이 (가) 자동으로 포장됩니까? 이 방법이 허용되는 이유는 무엇입니까? (Task<bool>
을 반환하는 메서드 서명을 따르지 않음).
업데이트 :
public void Main()
{
Input(Test);
}
public async Task<bool> Test()
{
return true;
}
public void Input(Func<Task<bool>> test)
{
}
이 시험 방법은 암시 적으로 Task
반환 곳 : 이가 매개 변수도 적용 할 것으로 보인다.
[비동기 및 대기 시간 작동 방식] (https://stackoverflow.com/questions/22349210/how-async-and-await-works)의 가능한 복제본 –
' 비동기식 '방법. 네가 묻고있는거야? –
@ RufusL right 나는 그것을 이해한다. 하지만 이유는 방법 1은 작업을 반환하지 않아도 이해가 안 돼 (해당 서명을 기반으로해야 함) –