У меня есть веб-API asp.net, интегрированный с общедоступным веб-сайтом пользовательского интерфейса
на веб-сайте будет много одновременных пользователей, которые подают заявки, api вытяните это в базу данных.Функции лота, такие как:
Получить данные
Обновить данные
Загрузить файлы
Я пытаюсь использовать асинхронные операции (особенно при загрузке документов)
Я отредактировал все функции для использования await Task.Run () => bla ())), вот так:
if (Someconditions)
{
await Task.Run(() => Function1());
await Task.Run(() => Function2())
if (Someconditions)
await Task.Run(() => Function3())
if (Someconditions)
await Task.Run(() => CreateUpdateDocumentDetails)); // Uploading document
Для функции загрузки документов я очень запутался
Должен ли я использовать await UploadDocumentAsync()
или
Task.Run(()=>UploadDocumetSync()) or Task.Run(()=>UploadDocumentAsync())
Также ли Task.Run (SyncFunc ()) значит все вышеперечисленные функции выполняются асинхронно, не помечая их как асинхронные, и это хорошая практика?
Последние вопросы, в чем разница между этим и выполнением всех функций (async / await)