Это всегда вернется немедленно:
var t = Task.Run(delegate
{
abspielenAsync();
return 42;
});
t.Wait();
Ваш abspielenAsync
метод не возвращает Task
, поэтому его нельзя ожидать. Таким образом, вы просто запускаете его в фоновом режиме и не ожидаете его (обычно это называется «Огонь и забудь»).
Если вы хотите подождать, пока abspielenAsync()
не будет завершено, прежде чем возвращать 42
, сделайте так, чтобы ваш abspielenAsync
метод возвратил Task
и измените место вызова на await abspielenAsync();
.