Partage via


ParallelMergeOptions Énumération

Définition

Spécifie le type de fusion de sortie préféré à 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.

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. Les résultats s'accumuleront dans une mémoire tampon de sortie avant de devenir accessibles par le consommateur de la requête.

Default 0

Utilisez AutoBuffered, le type de fusion par défaut.

FullyBuffered 3

Utilisez une fusion avec les mémoires tampons de sortie à pleine charge. Le système accumulera tous les résultats avant qu'ils ne deviennent accessibles par le consommateur de la requête.

NotBuffered 1

Utilisez une fusion sans mémoire tampon de sortie. 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.

Remarques

Utilisé NotBuffered pour les requêtes qui seront consommées et sorties en tant que flux, cela présente la latence la plus faible entre le début de l’exécution de la requête et les éléments générés. 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 AutoBuffered est ignorée. Toutefois, les requêtes créées à l’aide de l’opérateur AsOrdered peuvent être diffusées en continu tant qu’aucun autre tri n’est effectué dans la requête elle-même.

Utilisez AutoBuffered pour la plupart des cas ; il s’agit de la valeur par défaut. Il trouve un équilibre entre la latence et les performances globales.

Utilisez FullyBuffered pour les requêtes lorsque la sortie entière peut être traitée avant que les informations soient nécessaires. Cette option offre les meilleures performances lorsque toute la sortie peut être accumulée avant de produire des informations, bien qu’elle ne soit pas adaptée au traitement de flux ou à l’affichage des résultats partiels en milieu de requête.

S’applique à

Voir aussi