Quelqu'un pourrait-veuillez avoir l'amabilité de confirmer si j'ai bien compris la Async mot clé await correctement? (À l'aide de la version 3 de la CTP)
Donc ici, je n'ai travaillé que d'insérer le mot clé await avant un appel de méthode essentiellement 2 choses, A. Il crée un retour immédiat et B. Il crée une "suite" qui est appelée à la fin de la méthode async invocation. En tout cas, la suite est le reste du bloc de code pour la méthode.
Alors ce que je demande, ce sont ces deux bouts de code techniquement équivalent, et si oui, est-ce fondamentalement signifie que le mot clé await est identique à la création d'un ContinueWith Lambda (c'est à dire: c'est en fait un compilateur de raccourci pour une)? Si non, quelles sont les différences?
bool Success =
await new POP3Connector(
"mail.server.com", txtUsername.Text, txtPassword.Text).Connect();
// At this point the method will return and following code will
// only be invoked when the operation is complete(?)
MessageBox.Show(Success ? "Logged In" : "Wrong password");
VS
(new POP3Connector(
"mail.server.com", txtUsername.Text, txtPassword.Text ).Connect())
.ContinueWith((success) =>
MessageBox.Show(success.Result ? "Logged In" : "Wrong password"));