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
- RectIndependentAnimationStorage.cs
- WindowCollection.cs
- ConfigPathUtility.cs
- FlowDocumentFormatter.cs
- AppSettingsSection.cs
- ClientOptions.cs
- CalloutQueueItem.cs
- ConditionalAttribute.cs
- ClientSettingsProvider.cs
- TCPListener.cs
- NativeCompoundFileAPIs.cs
- DebugView.cs
- UnsafeNativeMethods.cs
- OrderedDictionaryStateHelper.cs
- ContextMarshalException.cs
- FormsAuthenticationTicket.cs
- SerializerProvider.cs
- CalendarTable.cs
- sqlnorm.cs
- ToolStripItemImageRenderEventArgs.cs
- UriParserTemplates.cs
- EditorAttribute.cs
- ContentPlaceHolder.cs
- TagPrefixInfo.cs
- DSACryptoServiceProvider.cs
- ConfigXmlElement.cs
- FolderBrowserDialogDesigner.cs
- NativeCppClassAttribute.cs
- LocatorPart.cs
- WindowsIPAddress.cs
- VisualStyleTypesAndProperties.cs
- ColorAnimation.cs
- Pen.cs
- XmlException.cs
- Mappings.cs
- Tablet.cs
- Duration.cs
- FontFamily.cs
- CodeExporter.cs
- AuthorizationContext.cs
- CompatibleComparer.cs
- HttpHandlerAction.cs
- BitmapFrame.cs
- XmlWriterDelegator.cs
- SqlFacetAttribute.cs
- Grammar.cs
- ChoiceConverter.cs
- MissingManifestResourceException.cs
- FunctionParameter.cs
- EventManager.cs
- TimeZoneInfo.cs
- PathParser.cs
- ErrorRuntimeConfig.cs
- ProcessThreadDesigner.cs
- FillBehavior.cs
- ToolboxItemImageConverter.cs
- HttpModulesSection.cs
- Soap.cs
- MenuCommandService.cs
- ActivitySurrogateSelector.cs
- FileLogRecordHeader.cs
- CompressEmulationStream.cs
- RecordBuilder.cs
- DynamicPropertyHolder.cs
- XPathParser.cs
- ProfileProvider.cs
- ToolStripGrip.cs
- LineGeometry.cs
- XamlToRtfWriter.cs
- While.cs
- OpenTypeCommon.cs
- Logging.cs
- NetSectionGroup.cs
- UInt64Storage.cs
- DesignerValidatorAdapter.cs
- Stacktrace.cs
- CheckedPointers.cs
- odbcmetadatafactory.cs
- UnmanagedMemoryStreamWrapper.cs
- followingquery.cs
- DataGridViewComboBoxCell.cs
- PolyLineSegment.cs
- FieldBuilder.cs
- Bidi.cs
- QilBinary.cs
- BamlMapTable.cs
- RenderContext.cs
- SiteMapHierarchicalDataSourceView.cs
- updateconfighost.cs
- Span.cs
- FixedSOMTableCell.cs
- UserControlDesigner.cs
- DesignerTextViewAdapter.cs
- XPathSelectionIterator.cs
- DesignerCommandSet.cs
- NativeRecognizer.cs
- DataGridViewComponentPropertyGridSite.cs
- DataGridViewComboBoxColumnDesigner.cs
- DoubleCollectionConverter.cs
- ContextMenuStrip.cs