Task Parallel Library fa parte di .NET Framework da .NET 4. È un insieme di API per consentire agli sviluppatori di programmare applicazioni asincrone.
Quando si dispone di un codice lato server (ovvero alcuni ApiController) e le funzioni sono asincrone - quindi ritornano Task<SomeObject>- è considerata la migliore pratica ogni volta che si aspettano funzioni che si chiamano ConfigureAwait(false)? Avevo letto che è più performante in quanto non deve riportare i contesti di thread …
Nel codice seguente, a causa dell'interfaccia, la classe LazyBardeve restituire un'attività dal suo metodo (e per ragioni di amore non può essere modificata). Se l' LazyBarimplementazione è insolita in quanto accade che venga eseguita rapidamente e in modo sincrono, qual è il modo migliore per restituire un'attività senza operazioni dal …
Sto usando un client API completamente asincrono, ovvero ogni operazione restituisce Tasko Task<T>, ad esempio: static async Task DoSomething(int siteId, int postId, IBlogClient client) { await client.DeletePost(siteId, postId); // call API client Console.WriteLine("Deleted post {0}.", siteId); } Utilizzando gli operatori C # 5 asincroni / wait, qual è il modo …
Voglio aspettare che un'attività <T> venga completata con alcune regole speciali: se non è stata completata dopo X millisecondi, voglio visualizzare un messaggio per l'utente. E se non si è completato dopo Y millisecondi, desidero richiedere automaticamente la cancellazione . Posso utilizzare Task.ContinueWith per attendere in modo asincrono il completamento …
Ci sono buone regole per quando usare Task.Delay contro Thread.Sleep ? In particolare, esiste un valore minimo per garantire che uno sia efficace / efficiente rispetto all'altro? Infine, poiché Task.Delay provoca il cambio di contesto su una macchina a stati asincroni / wait, c'è un sovraccarico nell'usarlo?
In C # 4.0, abbiamo Tasknello spazio dei nomi System.Threading.Tasks . Qual è la vera differenza tra Threade Task. Ho fatto un programma di esempio (aiuto preso da MSDN) per il mio bene di imparare con Parallel.Invoke Parallel.For Parallel.ForEach ma ho molti dubbi in quanto l'idea non è così chiara. …
Ho un'interfaccia che dichiara Task DoSomethingAsync(); Sto usando MoqFramework per i miei test: [TestMethod()] public async Task MyAsyncTest() { Mock<ISomeInterface> mock = new Mock<ISomeInterface>(); mock.Setup(arg => arg.DoSomethingAsync()).Callback(() => { <my code here> }); ... } Quindi nel mio test eseguo il codice che invoca await DoSomethingAsync(). E il test fallisce …
Ho un asyncmetodo che non restituisce dati: public async Task MyAsyncMethod() { // do some stuff async, don't return any data } Lo chiamo da un altro metodo che restituisce alcuni dati: public string GetStringData() { MyAsyncMethod(); // this generates a warning and swallows exceptions return "hello world"; } Chiamare …
Prefazione : sto cercando una spiegazione, non solo una soluzione. Conosco già la soluzione. Nonostante abbia trascorso diversi giorni a studiare articoli MSDN sul Task-based Asynchronous Pattern (TAP), asincrono e attendo, sono ancora un po 'confuso su alcuni dei dettagli più fini. Sto scrivendo un logger per le app di …
Utilizzando il CTP asincrono di Microsoft per .NET, è possibile rilevare un'eccezione generata da un metodo asincrono nel metodo chiamante? public async void Foo() { var x = await DoSomethingAsync(); /* Handle the result, but sometimes an exception might be thrown. For example, DoSomethingAsync gets data from the network and …
Qual è la differenza tra i frammenti di codice seguenti? Non userete entrambi i thread di threadpool? Ad esempio, se desidero chiamare una funzione per ciascun elemento in una raccolta, Parallel.ForEach<Item>(items, item => DoSomething(item)); vs foreach(var item in items) { Task.Factory.StartNew(() => DoSomething(item)); }
Devo eseguire più attività asincrone in un'applicazione console e attendere il completamento di tutte prima di un'ulteriore elaborazione. Ci sono molti articoli là fuori, ma mi sembra di essere più confuso più leggo. Ho letto e compreso i principi di base della libreria Task, ma mi manca chiaramente un link …
Ho 3 compiti: private async Task<Cat> FeedCat() {} private async Task<House> SellHouse() {} private async Task<Tesla> BuyCar() {} Devono essere eseguiti tutti prima che il mio codice possa continuare e ho bisogno anche dei risultati di ciascuno. Nessuno dei risultati ha qualcosa in comune tra loro Come chiamare e attendere …
Ho un asyncmetodo: public async Task<string> GenerateCodeAsync() { string code = await GenerateCodeService.GenerateCodeAsync(); return code; } Devo chiamare questo metodo da un metodo sincrono. Come posso fare questo senza dover duplicare il GenerateCodeAsyncmetodo affinché questo funzioni in modo sincrono? Aggiornare Tuttavia non è stata trovata alcuna soluzione ragionevole. Tuttavia, vedo …
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.