Как правильно вызывать метод Polly ExecuteAsyn c? - PullRequest
0 голосов
/ 18 марта 2020

При выполнении политики, я вижу, что некоторые люди называют ExecuteAsyn c примерно так:

...
.ExecuteAsync(async (ct) => await GetEmployeeAsync(employeeId, ct), cancellationToken);

И вот так:

...
.ExecuteAsync(ct => GetEmployeeAsync(employeeId, ct), cancellationToken);

В чем разница и какая следует использовать?

1 Ответ

2 голосов
/ 18 марта 2020

В этом простом случае разницы между семантией c нет. Версии eliding async и await имеют почти неизмеримое преимущество в производительности.

В общем случае при исключении async и await существуют некоторые подводные камни. Как правило, если код делает что-то нетривиальное, вы должны оставить async и await. Исключить async / await можно только в том случае, если код действительно тривиален - как в этом случае, когда делегат просто связывает employeeId с GetEmployeeAsync.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...