Мне нужно использовать стороннюю библиотеку в приложении ASP. NET веб-форм.
Сторонний метод, который я должен использовать, - asyn c.
Поскольку я должен вызывать его в обработчике события щелчка страницы, у меня есть 2 варианта:
- Объявить каждую страницу, которая должна использовать этот метод, как <% @ Page Async = "true" ...%>
- Вызов метода синхронно.
ПЕРВЫЙ ВОПРОС
Есть ли смысл объявлять все страницы сайта асинхронными c только для этого метода (потенциально может быть вызван на каждой странице)?
ВТОРОЙ ВОПРОС
Второй вопрос касается синхронного вызова метода asyn c .
Необходимость вызывать следующий метод
async Task<bool> MyMethodAsync()
{
...
}
В чем разница между следующими тремя вызовами?
Task.Run(async () => await MyMethodAsync()).GetAwaiter().GetResult();
Task.Run(() => MyMethodAsync()).GetAwaiter().GetResult();
MyMethodAsync().GetAwaiter().GetResult();
Я не вижу никакой разницы во время выполнения ...
Спасибо!