Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Linq / Parallel / QueryOperators / PartitionedStreamMerger.cs / 1305376 / PartitionedStreamMerger.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // PartitionedStreamMerger.cs // //[....] // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Threading.Tasks; using System.Diagnostics.Contracts; namespace System.Linq.Parallel { ////// Partitioned stream recipient that will merge the results. /// internal class PartitionedStreamMerger: IPartitionedStreamRecipient { private bool m_forEffectMerge; private ParallelMergeOptions m_mergeOptions; private bool m_isOrdered; private MergeExecutor m_mergeExecutor = null; private TaskScheduler m_taskScheduler; private int m_queryId; // ID of the current query execution private CancellationState m_cancellationState; #if DEBUG private bool m_received = false; #endif // Returns the merge executor which merges the received partitioned stream. internal MergeExecutor MergeExecutor { get { #if DEBUG Contract.Assert(m_received, "Cannot return the merge executor because Receive() has not been called yet."); #endif return m_mergeExecutor; } } internal PartitionedStreamMerger(bool forEffectMerge, ParallelMergeOptions mergeOptions, TaskScheduler taskScheduler, bool outputOrdered, CancellationState cancellationState, int queryId) { m_forEffectMerge = forEffectMerge; m_mergeOptions = mergeOptions; m_isOrdered = outputOrdered; m_taskScheduler = taskScheduler; m_cancellationState = cancellationState; m_queryId = queryId; } public void Receive (PartitionedStream partitionedStream) { #if DEBUG m_received = true; #endif m_mergeExecutor = MergeExecutor .Execute ( partitionedStream, m_forEffectMerge, m_mergeOptions, m_taskScheduler, m_isOrdered, m_cancellationState, m_queryId); TraceHelpers.TraceInfo("[timing]: {0}: finished opening - QueryOperator<>::GetEnumerator", DateTime.Now.Ticks); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BitmapEffectDrawing.cs
- BamlResourceContent.cs
- SafeCryptHandles.cs
- MailSettingsSection.cs
- NamespaceEmitter.cs
- Unit.cs
- MissingMethodException.cs
- CustomCategoryAttribute.cs
- WebPartDisplayMode.cs
- FontEmbeddingManager.cs
- TypefaceMap.cs
- DrawListViewSubItemEventArgs.cs
- MailMessageEventArgs.cs
- Registry.cs
- Token.cs
- DocumentOrderQuery.cs
- XmlNode.cs
- WebEventCodes.cs
- EventsTab.cs
- TemplateKey.cs
- Compiler.cs
- PersonalizationAdministration.cs
- XmlQueryStaticData.cs
- SecurityRuntime.cs
- DataGridViewColumnTypeEditor.cs
- ImageList.cs
- CommandLineParser.cs
- RawStylusSystemGestureInputReport.cs
- LongValidator.cs
- ControlCachePolicy.cs
- WorkflowTransactionService.cs
- XsltException.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- XmlSerializationGeneratedCode.cs
- ServiceModelEnumValidator.cs
- PackageFilter.cs
- FolderBrowserDialog.cs
- QueryBranchOp.cs
- WebPartMenu.cs
- ExceptionUtility.cs
- objectresult_tresulttype.cs
- HostUtils.cs
- PrePrepareMethodAttribute.cs
- Menu.cs
- RenderingBiasValidation.cs
- DataIdProcessor.cs
- MatrixUtil.cs
- ParameterInfo.cs
- GridViewRowPresenter.cs
- TextWriterTraceListener.cs
- CursorConverter.cs
- DataGridViewRowPostPaintEventArgs.cs
- Bits.cs
- DeclarativeCatalogPart.cs
- GridViewUpdatedEventArgs.cs
- BehaviorService.cs
- SynchronizedInputPattern.cs
- NumericUpDownAcceleration.cs
- BinaryKeyIdentifierClause.cs
- CommandExpr.cs
- Base64Stream.cs
- BindingSourceDesigner.cs
- ProtocolViolationException.cs
- UndoManager.cs
- UnsafeNativeMethods.cs
- BitmapEffectGeneralTransform.cs
- HtmlTitle.cs
- SiteOfOriginContainer.cs
- PathSegmentCollection.cs
- SqlException.cs
- PixelShader.cs
- PropertySourceInfo.cs
- AttributeCollection.cs
- SerializationObjectManager.cs
- HwndPanningFeedback.cs
- SocketAddress.cs
- ChangeNode.cs
- ProfileGroupSettings.cs
- SqlNodeAnnotations.cs
- Simplifier.cs
- ListMarkerLine.cs
- XsltLibrary.cs
- XmlILStorageConverter.cs
- EdgeProfileValidation.cs
- MergeFailedEvent.cs
- GridToolTip.cs
- FunctionDetailsReader.cs
- ProjectionPathBuilder.cs
- SchemaDeclBase.cs
- CreationContext.cs
- ConfigPathUtility.cs
- WebPartConnectionCollection.cs
- WSHttpTransportSecurityElement.cs
- AbstractDataSvcMapFileLoader.cs
- QilDataSource.cs
- DataGridViewTextBoxEditingControl.cs
- BitmapEffectGroup.cs
- PageSettings.cs
- StringComparer.cs
- WmiPutTraceRecord.cs