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
Installare le Web App site extension tramite una pipeline di Azure DevOps
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Utilizzare un service principal per accedere a Azure Container Registry
Inizializzare i container in Azure Container Apps
Usare le collection expression per inizializzare una lista di oggetti in C#
Paginare i risultati con QuickGrid in Blazor
Potenziare Azure AI Search con la ricerca vettoriale
Specificare il versioning nel path degli URL in ASP.NET Web API
Sfruttare al massimo i topic space di Event Grid MQTT
Generare file per il download da Blazor WebAssembly
I più letti di oggi
- Microsoft annuncia Windows "TrustBridge"
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Estrarre dati randomici da una lista di oggetti in C#
- Usare il colore CSS per migliorare lo stile della pagina
- Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione