Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Linq / Parallel / Partitioning / UnorderedHashRepartitionStream.cs / 1305376 / UnorderedHashRepartitionStream.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // UnorderedHashRepartitionStream.cs // //[....] // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections.Generic; using System.Threading; namespace System.Linq.Parallel { internal class UnorderedHashRepartitionStream: HashRepartitionStream { //---------------------------------------------------------------------------------------- // Creates a new partition exchange operator. // internal UnorderedHashRepartitionStream( PartitionedStream inputStream, Func keySelector, IEqualityComparer keyComparer, IEqualityComparer elementComparer, CancellationToken cancellationToken) : base(inputStream.PartitionCount, Util.GetDefaultComparer (), keyComparer, elementComparer) { // Create our array of partitions. m_partitions = new HashRepartitionEnumerator [inputStream.PartitionCount]; // Initialize state shared among the partitions. A latch and a matrix of buffers. Note that // the actual elements in the buffer array are lazily allocated if needed. CountdownEvent barrier = new CountdownEvent(inputStream.PartitionCount); ListChunk >[,] valueExchangeMatrix = new ListChunk >[inputStream.PartitionCount, inputStream.PartitionCount]; // Now construct each partition object. for (int i = 0; i < inputStream.PartitionCount; i++) { m_partitions[i] = new HashRepartitionEnumerator ( inputStream[i], inputStream.PartitionCount, i, keySelector, this, barrier, valueExchangeMatrix, cancellationToken); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // UnorderedHashRepartitionStream.cs // // [....] // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections.Generic; using System.Threading; namespace System.Linq.Parallel { internal class UnorderedHashRepartitionStream: HashRepartitionStream { //---------------------------------------------------------------------------------------- // Creates a new partition exchange operator. // internal UnorderedHashRepartitionStream( PartitionedStream inputStream, Func keySelector, IEqualityComparer keyComparer, IEqualityComparer elementComparer, CancellationToken cancellationToken) : base(inputStream.PartitionCount, Util.GetDefaultComparer (), keyComparer, elementComparer) { // Create our array of partitions. m_partitions = new HashRepartitionEnumerator [inputStream.PartitionCount]; // Initialize state shared among the partitions. A latch and a matrix of buffers. Note that // the actual elements in the buffer array are lazily allocated if needed. CountdownEvent barrier = new CountdownEvent(inputStream.PartitionCount); ListChunk >[,] valueExchangeMatrix = new ListChunk >[inputStream.PartitionCount, inputStream.PartitionCount]; // Now construct each partition object. for (int i = 0; i < inputStream.PartitionCount; i++) { m_partitions[i] = new HashRepartitionEnumerator ( inputStream[i], inputStream.PartitionCount, i, keySelector, this, barrier, valueExchangeMatrix, cancellationToken); } } } } // 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
- GenericParameterDataContract.cs
- LinkLabel.cs
- WinOEToolBoxItem.cs
- MethodImplAttribute.cs
- SqlColumnizer.cs
- TextSelectionProcessor.cs
- TraceContext.cs
- GeneralTransform3DTo2DTo3D.cs
- ShadowGlyph.cs
- PageRequestManager.cs
- DataRow.cs
- ControlParameter.cs
- DataGridViewColumnStateChangedEventArgs.cs
- HyperLinkField.cs
- datacache.cs
- TextCharacters.cs
- ConfigurationManagerHelperFactory.cs
- DataMisalignedException.cs
- xml.cs
- ConfigXmlComment.cs
- DataGridViewComboBoxColumn.cs
- PreviewPageInfo.cs
- DelegatingTypeDescriptionProvider.cs
- NameTable.cs
- ConfigurationManagerHelperFactory.cs
- AssemblyHash.cs
- SqlUserDefinedTypeAttribute.cs
- XmlNamespaceMapping.cs
- ValidatedControlConverter.cs
- HostedAspNetEnvironment.cs
- WindowsTokenRoleProvider.cs
- ToolStripPanelRenderEventArgs.cs
- QilGeneratorEnv.cs
- DesignDataSource.cs
- SqlClientFactory.cs
- PropertiesTab.cs
- DataControlLinkButton.cs
- ListViewTableCell.cs
- EncoderNLS.cs
- ListControlActionList.cs
- AuthenticationManager.cs
- HttpListenerResponse.cs
- HashRepartitionEnumerator.cs
- OrthographicCamera.cs
- RegexGroup.cs
- DocumentOutline.cs
- MetafileHeader.cs
- TraceData.cs
- DateTimeValueSerializer.cs
- QuaternionConverter.cs
- BulletDecorator.cs
- WebHttpSecurityElement.cs
- EtwTrackingBehavior.cs
- PathSegmentCollection.cs
- PointUtil.cs
- GatewayIPAddressInformationCollection.cs
- BidPrivateBase.cs
- BamlWriter.cs
- CapabilitiesPattern.cs
- StorageModelBuildProvider.cs
- ConfigurationManagerHelperFactory.cs
- CompilerTypeWithParams.cs
- AttachmentService.cs
- ItemsControlAutomationPeer.cs
- ArgumentException.cs
- Pair.cs
- ComPlusAuthorization.cs
- SqlDataSourceEnumerator.cs
- PropertyPathConverter.cs
- ThicknessAnimationUsingKeyFrames.cs
- XmlArrayAttribute.cs
- CapabilitiesRule.cs
- DataSet.cs
- ByteStorage.cs
- TypeHelper.cs
- DataGridViewButtonColumn.cs
- IisTraceListener.cs
- WebPartMinimizeVerb.cs
- VirtualDirectoryMappingCollection.cs
- DrawingServices.cs
- AffineTransform3D.cs
- indexingfiltermarshaler.cs
- HierarchicalDataSourceControl.cs
- RightNameExpirationInfoPair.cs
- FileDialog.cs
- RequestTimeoutManager.cs
- Object.cs
- DataComponentGenerator.cs
- ServiceInstallComponent.cs
- StrokeNodeOperations2.cs
- PersonalizationProvider.cs
- StaticTextPointer.cs
- GeneralTransform.cs
- SizeFConverter.cs
- listitem.cs
- SharedStatics.cs
- CultureInfoConverter.cs
- TraceUtils.cs
- ProgressBar.cs
- XmlSchemaRedefine.cs