Articles of async wait

Comment la sémantique d’AsyncLocal diffère-t-elle du contexte d’appel logique?

.NET 4.6 introduit la AsyncLocal pour les données ambiantes circulant le long du stream de contrôle asynchrone. J’ai déjà utilisé CallContext.LogicalGet/SetData à cette fin, et je me demande si et comment les deux sont sémantiquement différents (au-delà des différences évidentes de l’API telles que le fort typage et le manque de confiance dans les clés […]

Promise Equivalent en C #

Dans Scala, il existe une classe Promise qui peut être utilisée pour compléter manuellement un avenir. Je cherche une alternative en C #. J’écris un test et je veux qu’il ressemble à ceci: // var MyResult has a field `Header` var promise = new Promise; handlerMyEventsWithHandler( msg => promise.Complete(msg); ); // Wait for 2 seconds […]

Créer une méthode asynchrone dans .NET 4.0 pouvant être utilisée avec “wait” dans .NET 4.5

J’ai un projet .NET qui utilise C # dans .NET 4.0 et VS2010. Ce que je voudrais faire, c’est append des surcharges asynchrones à ma bibliothèque pour faciliter la programmation asynchrone pour les utilisateurs de .NET 4.5 avec le mot-clé wait. En ce moment, les méthodes en surcharge sont non asynchrones. Je ne veux pas […]

L’opérateur ‘wait’ ne peut être utilisé que dans une expression asynchrone

J’ai ac # Windows Store app. J’essaie de lancer un MessageDialog lorsque l’un des boutons de commande à l’intérieur d’un autre MessageDialog est cliqué. Le but de ceci est d’avertir l’utilisateur que son contenu n’est pas enregistré, et s’il clique sur Annuler, il sera invité à enregistrer en utilisant une boîte de dialog de sauvegarde […]

Pourquoi ConfigureAwait (false) n’est pas l’option par défaut?

Comme vous le savez, il est Task.ConfigureAwait(false) appeler Task.ConfigureAwait(false) lorsque vous attendez une tâche dans un code qui n’a pas besoin de capturer un contexte de synchronisation, car cela peut provoquer des blocages sinon. Eh bien, à quelle fréquence devez-vous capturer un contexte de synchronisation? Je pratique, très rarement. Dans la plupart des cas, je […]

Est-il possible d’obtenir une bonne trace de stack avec les méthodes asynchrones .NET?

J’ai l’exemple de configuration de code suivant dans une application WebApi: [HttpGet] public double GetValueAction() { return this.GetValue().Result; } public async Task GetValue() { return await this.GetValue2().ConfigureAwait(false); } public async Task GetValue2() { throw new InvalidOperationException(“Couldn’t get value!”); } Malheureusement, lorsque GetValueAction est touché, la trace de la stack qui revient est la suivante: ” […]

Validation ou annulation asynchrone d’une étendue de transaction

Comme beaucoup le savent, TransactionScope été oublié lorsque le modèle d’ await async été introduit dans .Net. Ils étaient cassés si nous essayions d’utiliser des appels en await dans une scope de transaction. Maintenant, ceci est corrigé grâce à une option constructeur de scope . Mais il me semble qu’il ya encore une pièce manquante, […]

Un point d’entrée ne peut pas être marqué avec le modificateur ‘async’

J’ai copié ci-dessous le code de ce lien. Mais lorsque je comstack ce code, je reçois un point d’entrée qui ne peut pas être marqué avec le modificateur “async” . Comment puis-je rendre ce code compilable? class Program { static async void Main(ssortingng[] args) { Task getWebPageTask = GetWebPageAsync(“http://msdn.microsoft.com”); Debug.WriteLine(“In startButton_Click before await”); ssortingng webText […]

Que dois-je faire pour rendre mes méthodes plus attrayantes?

Comment puis-je lancer mes propres méthodes asynchrones? Je vois que l’écriture d’une méthode asynchrone est simple comme bonjour dans certains cas: private async Task TestGeo() { Geolocator geo = new Geolocator(); Geoposition pos = await geo.GetGeopositionAsync(); double dLat = pos.Coordinate.Latitude; double dLong = pos.Coordinate.Latitude; } … mais malheureusement aussi voir que pas n’importe quelle méthode […]

System.NotSupportedException lorsque vous essayez de créer un actif

J’essaie d’utiliser l’ Azure MediaService API avec l’ Azure Storage API dans un API Service hébergé dans Azure . L’utilisateur envoie le stream vidéo au service en tant que HttpPost , le service enregistre la vidéo en tant que blob dans mon compte Storage, le service multimédia encode la vidéo et, lorsque le lien vers […]