Je voudrais faire une fonction asynchrone, donc j'ajoute simplement async
comme ceci:
public async static void something(){
}
Vous pouvez voir que son type de retour est void
. Je veux juste que cette fonction soit appelée de manière asynchrone sans blocage, car return est void
donc pas de await
n'est nécessaire.
Mais Visual Studio 2012 ne peut tout simplement pas compiler cela, il dit que je manque await
?
Pourriez-vous s'il vous plaît conseiller un exemple qui fait une fonction async
sans utiliser await
.
Je pense que peut-être vous vous méprenez sur ce que fait async
. L'avertissement est tout à fait exact: si vous marquez votre méthode async
mais n'utilisez pas await
nulle part, alors votre méthode ne sera pas asynchrone. Si vous l'appelez, tout le code à l'intérieur de la méthode s'exécutera de manière synchrone.
Vous devez également éviter d’utiliser async void
méthodes, elles rendent la gestion des exceptions difficile.