Quando specifichiamo che una query deve essere eseguita da PLINQ, non è detto che effettivamente questa venga eseguita in parallelo. Infatti, il motore PLINQ effettua un calcolo in base al quale decide se parallelizzare o meno l'esecuzione della query. Volendo, possiamo forzare l'esecuzione in parallelo attraverso il metodo WithExecutionMode che accetta un parametro che specifica il tipo di esecuzione che vogliamo forzare.
var parallelQuery = persone.AsParallel() .WithExecutionMode(ParallelExecutionMode.ForceParallelism) .Where(p => p.Nome == "Stefano") .Select(p => p.Cognome) .ToList();
In questo esempio, specifichiamo al run time che la query deve essere eseguita obbligatoriamente in parallelo.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Utilizzare Locust con Azure Load Testing
Definire il colore di una scrollbar HTML tramite CSS
Utilizzare l nesting nativo dei CSS
Semplificare i deployment con le label in Azure Container App
Evidenziare una porzione di testo in un pagina dopo una navigazione
Interagire con Azure DevOps tramite MCP Server
Ridurre il reflow ottimizzando il CSS
Scrivere selettori CSS più semplici ed efficienti con :is()
Loggare le query più lente con Entity Framework
Impostare la content-visibility in CSS per ottimizare il rendering iniziale di una pagina
Gestire codice JavaScript con code splitting e lazy loading
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Sfruttare una CDN con i bundle di ASP.NET
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Le DirectInk API nella Universal Windows Platform
- Gli oggetti CallOut di Expression Blend 4.0


