Тип возвращаемого значения синхронного метода с асинхронной пометкойC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Тип возвращаемого значения синхронного метода с асинхронной пометкой

Сообщение Anonymous »


Я пытаюсь что-то понять на C#. Я узнал, что метод C# с асинхронной пометкой должен возвращать Task. Но я также узнал, что метод, помеченный как асинхронный, не обязательно имеет асинхронное поведение. Иногда я помечаю метод как асинхронный, чтобы иметь возможность дождаться метода, т. е. синхронизировать выполнение. Вот пример:

асинхронная задача X() { // Некоторая асинхронная работа, возвращающая int. результат int = ждут SomeAsyncOperation(); вернуть результат; } Здесь, очевидно, с точки зрения вызывающего абонента, я могу посмотреть на X и сказать: ну, мне не нужно ждать этого метода, поскольку он синхронный. Я знаю, что он будет ждать асинхронного выполнения SomeAsyncOperation и только после его завершения выдаст мне результат. По сути, я рассматриваю X как синхронный метод.

Но X все равно должен вернуть задачу, которая «представляет собой асинхронную операцию, которая может возвращать значение». Как мне выйти из этой цепочки задач при всех вызовах метода X или теперь мне придется перетаскивать задачу по всем вызовам метода X?

Другими словами, могу ли я это написать или это заблокирует ветку?
int X() { вернуть SomeAsyncOperation().Результат; }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»