ParallelMergeOptions Énumération

Définition

Spécifie le type préféré de fusion de sortie à utiliser dans une requête. En d’autres termes, il indique comment PLINQ doit fusionner les résultats des différentes partitions en une séquence de résultat unique. Cela n'est qu'une indication, que le système peut ne pas suivre pendant la parallélisation de toutes les requêtes.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
Héritage
ParallelMergeOptions

Champs

AutoBuffered 2

Utilisez une fusion avec mémoires tampons de sortie d'une taille choisie par le système.Use a merge with output buffers of a size chosen by the system. Les résultats s'accumuleront dans une mémoire tampon de sortie avant de devenir accessibles par le consommateur de la requête.Results will accumulate into an output buffer before they are available to the consumer of the query.

Default 0

Utilisez AutoBuffered, le type de fusion par défaut.Use the default merge type, which is AutoBuffered.

FullyBuffered 3

Utilisez une fusion avec les mémoires tampons de sortie à pleine charge.Use a merge with full output buffers. Le système accumulera tous les résultats avant qu'ils ne deviennent accessibles par le consommateur de la requête.The system will accumulate all of the results before making any of them available to the consumer of the query.

NotBuffered 1

Utilisez une fusion sans mémoire tampon de sortie.Use a merge without output buffers. Dès que les éléments de résultat ont été calculés, rendez cet élément accessible par le consommateur de la requête.As soon as result elements have been computed, make that element available to the consumer of the query.

Remarques

Utilisez NotBuffered pour les requêtes qui seront consommées et sorties sous forme de flux. il s’agit de la latence la plus faible entre le début de l’exécution de la requête et celui où les éléments sont générés.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. Pour certaines requêtes, telles que celles impliquant un tri (OrderBy, OrderByDescending), la mise en mémoire tampon est essentielle et une indication de NotBuffered ou de mise en mémoire tampon automatique est ignorée.For some queries, such as those involving a sort (OrderBy, OrderByDescending), buffering is essential and a hint of NotBuffered or AutoBuffered will be ignored. Toutefois, les requêtes créées à l’aide de l’opérateur AsOrdered peuvent être diffusées en continu tant qu’aucun tri n’est effectué dans la requête elle-même.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.

Utilisez AutoBuffered dans la plupart des cas ; Il s’agit de la valeur par défaut.Use AutoBuffered for most cases; this is the default. Il établit un équilibre entre la latence et les performances globales.It strikes a balance between latency and overall performance.

Utilisez FullyBuffered pour les requêtes lorsque l’intégralité de la sortie peut être traitée avant que les informations ne soient nécessaires.Use FullyBuffered for queries when the entire output can be processed before the information is needed. Cette option offre les meilleures performances lorsque la totalité de la sortie peut être accumulée avant de produire des informations, bien qu’elle ne soit pas appropriée pour le traitement de flux de données ou l’affichage de résultats partiels de la requête Mid-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.

S’applique à

Voir aussi