ParallelMergeOptions Enumerazione

Definizione

Specifica il tipo di output merge preferito da usare in una query. In altre parole, indica il modo in cui PLINQ unisce di nuovo i risultati dalle varie partizioni in un'unica sequenza di risultato. Si tratta solo di un suggerimento e può non essere rispettato dal sistema nella parallelizzazione di tutte le query.This is a hint only, and may not be respected by the system when parallelizing all queries.

public enum class ParallelMergeOptions
public enum ParallelMergeOptions
type ParallelMergeOptions = 
Public Enum ParallelMergeOptions
Ereditarietà
ParallelMergeOptions

Campi

AutoBuffered 2

Utilizzare un'unione con i buffer di output di una dimensione scelta dal sistema.Use a merge with output buffers of a size chosen by the system. I risultati verranno accumulati in un buffer di output prima di essere disponibili all'utente della query.Results will accumulate into an output buffer before they are available to the consumer of the query.

Default 0

Utilizzare il tipo di unione predefinito, ovvero AutoBuffered.Use the default merge type, which is AutoBuffered.

FullyBuffered 3

Utilizzare un'unione con buffer di output completi.Use a merge with full output buffers. Tutti i risultati verranno accumulati dal sistema in un buffer di output prima di essere resi disponibili all'utente della query.The system will accumulate all of the results before making any of them available to the consumer of the query.

NotBuffered 1

Utilizzare un'unione senza buffer di output.Use a merge without output buffers. Non appena gli elementi del risultato sono stati calcolati, vengono resi disponibili all'utente della query.As soon as result elements have been computed, make that element available to the consumer of the query.

Commenti

Usare NotBuffered per le query che verranno utilizzate e restituite come flussi. questa operazione presenta la latenza più bassa tra l'inizio dell'esecuzione della query e gli elementi da restituire.Use NotBuffered for queries that will be consumed and output as streams, this has the lowest latency between beginning query execution and elements being yielded. Per alcune query, ad esempio quelle che interessano un ordinamento (OrderBy, OrderByDescending), il buffering è essenziale e un suggerimento di NotBuffered o autobuffering verrà ignorato.For some queries, such as those involving a sort (OrderBy, OrderByDescending), buffering is essential and a hint of NotBuffered or AutoBuffered will be ignored. Tuttavia, le query create usando l'operatore AsOrdered possono essere trasmesse a condizione che non venga eseguito un ulteriore ordinamento nella query stessa.However, queries that are created by using the AsOrdered operator can be streamed as long as no further sorting is performed within the query itself.

Utilizzare AutoBuffered per la maggior parte dei casi. si tratta dell'impostazione predefinita.Use AutoBuffered for most cases; this is the default. Si raggiunge un equilibrio tra la latenza e le prestazioni complessive.It strikes a balance between latency and overall performance.

Usare FullyBuffered per le query quando l'intero output può essere elaborato prima che siano necessarie le informazioni.Use FullyBuffered for queries when the entire output can be processed before the information is needed. Questa opzione offre prestazioni ottimali quando è possibile accumulare tutto l'output prima di restituire informazioni, anche se non è adatto per l'elaborazione di flussi o per la visualizzazione di risultati parziali a metà query.This option offers the best performance when all of the output can be accumulated before yielding any information, though it is not suitable for stream processing or showing partial results mid-query.

Si applica a

Vedi anche