Быстрый вопрос..
Чтобы получить четкое базовое понимание асинхронного программирования и await
, я хотел бы знать, в чем разница между этими двумя фрагментами кода, когда речь идет о многопоточности и последовательности выполнения и времени:
Это
public Task CloseApp()
{
return Task.Run(
()=>{
// save database
// turn off some lights
// shutdown application
});
}
В сравнении с этим:
public async Task CloseApp()
{
await Task.Run(
()=>{
// save database
// turn off some lights
// shutdown application
});
}
если я вызываю его в этой процедуре:
private async void closeButtonTask()
{
// Some Task 1
// ..
await CloseApp();
// Some Task 2
// ..
}