Articles of tâche

Comment déterminer si Task.Run est terminé dans une boucle

C’est peut-être une question étrange et c’est vraiment pour mon but éducatif afin que je puisse l’appliquer dans des scénarios futurs qui pourraient se présenter. J’utilise C #. Je suis stress test donc ce n’est pas tout à fait code de production. Je télécharge des données sur mon serveur via un service Web. Je lance […]

Enregistrer le contenu du corps de l’e-mail dans Outlook dans un fichier

Je veux enregistrer le contenu du corps de l’e-mail dans Outlook dans un fichier. Je suis capable de sauver le message entier .msg mais je veux sauver seulement le contenu de HTML du corps. Par exemple, dans le corps de l’e-mail Outlook, j’ai un tableau que je veux enregistrer dans un fichier. le script sur […]

Mélange asynchrone / wait avec Result

Permettez-moi de commencer cette question par quelques remarques: J’ai lu plusieurs questions SO indiquant que vous ne devriez pas le faire (par exemple, comment mélanger en toute sécurité code de synchronisation et code async ) J’ai lu à nouveau Async / Await – Meilleures pratiques en programmation asynchrone , disant que vous ne devriez pas […]

Combien de tâches sont trop nombreuses?

Je travaille actuellement sur une application qui s’appuie sur de nombreux services Web pour obtenir des données. Puisque je veux modulariser chaque service et avoir un peu de dépendance (le service 1 doit être exécuté avant les services 2 et 3, etc.), j’exécute chaque service dans sa propre tâche. Les tâches elles-mêmes sont soit en […]

Nettoyage de CallContext dans TPL

Selon que j’utilise un code basé sur async / wait ou un code basé sur TPL, CallContext deux comportements différents en ce qui concerne le nettoyage de CallContext logique. Je peux définir et effacer le CallContext logique exactement comme je le souhaite si j’utilise le code async / wait suivant: class Program { static async […]

Est-ce une mauvaise pratique de retourner une tâche statique vide dans TPL?

Dans certains cas, je souhaiterais exécuter une tâche de manière conditionnelle. J’utilise une sorte de méthode d’extension comme ceci: public static class MyTaskExtension{ private static Task theEmptyTask = Task.Factory.StartNew(() => {}); //This is the question public static Task ContinueWith(this Task task, Task continuationTask, Func condition) { if condition(){ … do the work } return theEmptyTask; […]

wait AsyncMethod () et wait wait Task.Factory.StartNew (AsyncMethod)

Compte tenu de la méthode suivante: public async Task DoSomethingAsync() { // do some work await OpenSomeFileAsync(); return new MyObject(); } Y a-t-il une différence entre: public async void SomeEventHandler(EventArgs args) { var myObject = await await Task.Factory.StartNew<Task>( DoSomethingAsync); // do something with myObject } et: public async void SomeEventHandler(EventArgs args) { var myObject = […]

Cross-thread operation not not error erreur lorsque je reçois une chaîne d’une autre tâche

Au niveau de mon code, je conçois une interface utilisateur graphique gérée en une tâche. À partir de la classe Form1, j’envoie des parameters de méthode à une autre classe d’une tâche différente et obtient les parameters de la tâche. A la classe form1, j’ai la myEvt_valueChnaged(ssortingng s) qui obtient la chaîne s tant qu’argument […]

Passage du paramètre value à Task en c #

J’ai un problème avec passer un long par valeur à une tâche. J’ai une liste d’identifiants où je les passe en boucle, les assigne à une variable locale, puis passe en paramètre à une nouvelle tâche. Je n’attends pas la fin de la tâche pour effectuer une boucle et traiter l’ID suivant. Je garde un […]

Est-il possible d’attendre une opération d’entrée-sortie non déclarée asynchrone? Si non, que dois-je faire?

Je suis nouveau dans la programmation asynchrone en C # et je suis encore confus sur certaines choses. J’ai lu qu’après .NET 4.5, les APM et EAP ne sont plus recommandés pour les nouveaux développements, car le TAP est censé les remplacer ( source ). Je pense avoir compris comment async / wait fonctionne et […]