Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Collections / Concurrent / IProducerConsumerCollection.cs / 1305376 / IProducerConsumerCollection.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // IProducerConsumerCollection.cs // //[....] // // A common interface for all concurrent collections. // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections; using System.Collections.Generic; using System.Diagnostics; namespace System.Collections.Concurrent { ////// Defines methods to manipulate thread-safe collections intended for producer/consumer usage. /// ///Specifies the type of elements in the collection. ////// All implementations of this interface must enable all members of this interface /// to be used concurrently from multiple threads. /// public interface IProducerConsumerCollection: IEnumerable , ICollection { /// /// Copies the elements of the /// The one-dimensionalto /// an /// , starting at a specified index. /// that is the destination of /// the elements copied from the . /// The array must have zero-based indexing. /// The zero-based index in at which copying /// begins. /// /// is a null reference (Nothing in /// Visual Basic). /// is less than /// zero. void CopyTo(T[] array, int index); /// is equal to or greater than the /// length of the /// -or- The number of elements in the source is greater than the /// available space from to the end of the destination . /// /// Attempts to add an object to the /// The object to add to the. /// . /// true if the object was added successfully; otherwise, false. ///The bool TryAdd(T item); ///was invalid for this collection. /// Attempts to remove and return an object from the /// /// When this method returns, if the object was removed and returned successfully,. /// contains the removed object. If no object was available to be removed, the value is /// unspecified. /// /// true if an object was removed and returned successfully; otherwise, false. bool TryTake(out T item); ////// Copies the elements contained in the ///to a new array. /// A new array containing the elements copied from the T[] ToArray(); } ///. /// A debugger view of the IProducerConsumerCollection that makes it simple to browse the /// collection's contents at a point in time. /// ///The type of elements stored within. internal sealed class SystemCollectionsConcurrent_ProducerConsumerCollectionDebugView{ private IProducerConsumerCollection m_collection; // The collection being viewed. /// /// Constructs a new debugger view object for the provided collection object. /// /// A collection to browse in the debugger. public SystemCollectionsConcurrent_ProducerConsumerCollectionDebugView(IProducerConsumerCollectioncollection) { if (collection == null) { throw new ArgumentNullException("collection"); } m_collection = collection; } /// /// Returns a snapshot of the underlying collection's elements. /// [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public T[] Items { get { return m_collection.ToArray(); } } } } // 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
- TextReader.cs
- GridViewUpdatedEventArgs.cs
- DoubleCollection.cs
- DebugController.cs
- TextCompositionManager.cs
- TableColumnCollection.cs
- OleDbDataReader.cs
- HttpStreamFormatter.cs
- BaseConfigurationRecord.cs
- Utils.cs
- DetailsViewUpdateEventArgs.cs
- ConstantCheck.cs
- Rotation3DAnimationUsingKeyFrames.cs
- RequestBringIntoViewEventArgs.cs
- ObjectParameterCollection.cs
- validationstate.cs
- SoapSchemaExporter.cs
- prefixendpointaddressmessagefiltertable.cs
- SystemTcpConnection.cs
- Decorator.cs
- Converter.cs
- Timer.cs
- BinaryKeyIdentifierClause.cs
- SoapEnumAttribute.cs
- DataGridViewToolTip.cs
- DeferredTextReference.cs
- EncoderNLS.cs
- MapPathBasedVirtualPathProvider.cs
- DbConnectionClosed.cs
- SafeProcessHandle.cs
- Predicate.cs
- PtsContext.cs
- X509RawDataKeyIdentifierClause.cs
- UserControlParser.cs
- XPathNavigatorReader.cs
- SemanticAnalyzer.cs
- ZipIOCentralDirectoryBlock.cs
- TypedTableBaseExtensions.cs
- DataRowComparer.cs
- WizardForm.cs
- DisableDpiAwarenessAttribute.cs
- ProfileSettings.cs
- Array.cs
- ConditionalExpression.cs
- ExecutedRoutedEventArgs.cs
- CheckBoxField.cs
- ObjectHelper.cs
- EntityDataSourceWizardForm.cs
- StringToken.cs
- Compiler.cs
- Nodes.cs
- StrokeDescriptor.cs
- DescendantQuery.cs
- Typography.cs
- SkewTransform.cs
- DataGridViewButtonCell.cs
- HTMLTagNameToTypeMapper.cs
- CombinedGeometry.cs
- QueryOperatorEnumerator.cs
- EdgeProfileValidation.cs
- ToolStripStatusLabel.cs
- coordinatorscratchpad.cs
- ContentHostHelper.cs
- NTAccount.cs
- BindStream.cs
- JpegBitmapDecoder.cs
- CorrelationManager.cs
- SeparatorAutomationPeer.cs
- SortAction.cs
- Profiler.cs
- SmiXetterAccessMap.cs
- IntegrationExceptionEventArgs.cs
- BaseParser.cs
- DrawingImage.cs
- BlurEffect.cs
- SchemaObjectWriter.cs
- configsystem.cs
- HtmlTableCellCollection.cs
- OverflowException.cs
- LinqDataSourceSelectEventArgs.cs
- UIPermission.cs
- MediaTimeline.cs
- GregorianCalendar.cs
- Pen.cs
- DetailsViewUpdateEventArgs.cs
- WebRequest.cs
- CustomAttributeBuilder.cs
- followingquery.cs
- ServiceContractDetailViewControl.cs
- ComponentManagerBroker.cs
- GlobalEventManager.cs
- IncrementalCompileAnalyzer.cs
- TextPointer.cs
- DataSourceBooleanViewSchemaConverter.cs
- SqlMethodCallConverter.cs
- Italic.cs
- ControlDesignerState.cs
- HtmlTitle.cs
- DataTableReaderListener.cs
- LabelInfo.cs