Что происходит при вызове ассинхронной функции через async await?

Можно ли запускать ассинхронные задачи через конструкцию _?

Например

_ = showText("текст исчезнет через 3 секунды");

При том что функция showText ассинхронная?

async Task showText(){
  await Task.Delay(3000);
}

Я правильно понимаю что происходит следующее?

void mainFunc(){
       int a = .....;  
       _ = showText("текст исчезнет через 3 секунды");
       int b = .....;
}
  1. В функции mainFunc вычисляется переменная а.
  2. Создается новый поток в котором выполняется функция showText
  3. Вычисляется переменная b
  4. Через 3 секунды функция showText вернет void и поток полностью закроется и высвободит все ресурсы?
  5. Таких потоков можно создать одновременно например 2000 без ущерба для производительности?

Ответы (0 шт):