La bibliothèque parallèle de tâches fait partie du .NET Framework depuis .NET 4. Il s'agit d'un ensemble d'API permettant aux développeurs de programmer des applications asynchrones.
Lorsque vous avez du code côté serveur (c'est-à-dire certains ApiController) et que vos fonctions sont asynchrones - donc elles reviennent Task<SomeObject>- est-il considéré comme une meilleure pratique que chaque fois que vous attendez des fonctions que vous appelez ConfigureAwait(false)? J'avais lu qu'il est plus performant car il n'a pas à …
Dans le code ci-dessous, en raison de l'interface, la classe LazyBardoit renvoyer une tâche à partir de sa méthode (et pour des arguments, le sake ne peut pas être changé). Si l' LazyBarimplémentation de S est inhabituelle en ce sens qu'elle s'exécute rapidement et de manière synchrone - quelle est …
J'utilise un client API complètement asynchrone, c'est-à-dire que chaque opération retourne Taskou Task<T>, par exemple: static async Task DoSomething(int siteId, int postId, IBlogClient client) { await client.DeletePost(siteId, postId); // call API client Console.WriteLine("Deleted post {0}.", siteId); } En utilisant les opérateurs asynchrones / attendent C # 5, quelle est la …
Je veux attendre qu'une tâche <T> se termine avec quelques règles spéciales: si elle ne s'est pas terminée après X millisecondes, je veux afficher un message à l'utilisateur. Et si elle ne s'est pas terminée après Y millisecondes, je souhaite demander automatiquement l' annulation . Je peux utiliser Task.ContinueWith pour …
Existe-t-il de bonnes règles pour savoir quand utiliser Task.Delay contre Thread.Sleep ? Plus précisément, existe-t-il une valeur minimale à prévoir pour que l'un soit efficace / efficient par rapport à l'autre? Enfin, étant donné que Task.Delay provoque un changement de contexte sur une machine d'état asynchrone / attente, y a-t-il …
En C # 4.0, nous avons Taskdans l' espace de noms System.Threading.Tasks . Quelle est la vraie différence entre Threadet Task. J'ai fait un exemple de programme (aide tirée de MSDN) pour mon propre plaisir d'apprendre avec Parallel.Invoke Parallel.For Parallel.ForEach mais ont de nombreux doutes car l'idée n'est pas si …
Quelle est la différence entre Task.WaitAll()et Task.WhenAll()depuis le CTP Async? Pouvez-vous fournir un exemple de code pour illustrer les différents cas d'utilisation?
J'ai une interface qui déclare Task DoSomethingAsync(); J'utilise MoqFramework pour mes tests: [TestMethod()] public async Task MyAsyncTest() { Mock<ISomeInterface> mock = new Mock<ISomeInterface>(); mock.Setup(arg => arg.DoSomethingAsync()).Callback(() => { <my code here> }); ... } Ensuite, dans mon test, j'exécute le code qui invoque await DoSomethingAsync(). Et le test échoue simplement …
J'ai une asyncméthode qui ne renvoie aucune donnée: public async Task MyAsyncMethod() { // do some stuff async, don't return any data } J'appelle cela à partir d'une autre méthode qui renvoie des données: public string GetStringData() { MyAsyncMethod(); // this generates a warning and swallows exceptions return "hello world"; …
Préface : Je cherche une explication, pas seulement une solution. Je connais déjà la solution. Malgré avoir passé plusieurs jours à étudier des articles MSDN sur le modèle asynchrone basé sur les tâches (TAP), asynchroniser et attendre, je suis toujours un peu confus au sujet de certains des détails les …
À l'aide du CTP asynchrone de Microsoft pour .NET, est-il possible d'attraper une exception levée par une méthode async dans la méthode appelante? public async void Foo() { var x = await DoSomethingAsync(); /* Handle the result, but sometimes an exception might be thrown. For example, DoSomethingAsync gets data from …
Quelle est la différence entre les extraits de code ci-dessous? N'utilisera-t-il pas tous les deux des threads de pool de threads? Par exemple, si je veux appeler une fonction pour chaque élément d'une collection, Parallel.ForEach<Item>(items, item => DoSomething(item)); vs foreach(var item in items) { Task.Factory.StartNew(() => DoSomething(item)); }
J'ai besoin d'exécuter plusieurs tâches asynchrones dans une application console et d'attendre qu'elles se terminent toutes avant de poursuivre le traitement. Il y a beaucoup d'articles là-bas, mais je semble devenir plus confus à mesure que je lis. J'ai lu et compris les principes de base de la bibliothèque de …
J'ai 3 tâches: private async Task<Cat> FeedCat() {} private async Task<House> SellHouse() {} private async Task<Tesla> BuyCar() {} Ils doivent tous s'exécuter avant que mon code puisse continuer et j'ai également besoin des résultats de chacun. Aucun des résultats n'a rien en commun les uns avec les autres Comment puis-je …
J'ai une asyncméthode: public async Task<string> GenerateCodeAsync() { string code = await GenerateCodeService.GenerateCodeAsync(); return code; } J'ai besoin d'appeler cette méthode à partir d'une méthode synchrone. Comment puis-je faire cela sans avoir à dupliquer la GenerateCodeAsyncméthode pour que cela fonctionne de manière synchrone? Mettre à jour Pourtant, aucune solution raisonnable …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.