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
- WriterOutput.cs
- Pair.cs
- LogSwitch.cs
- XmlDomTextWriter.cs
- RouteData.cs
- QuaternionAnimationUsingKeyFrames.cs
- HtmlTernaryTree.cs
- NetMsmqSecurityMode.cs
- XmlSchemaAll.cs
- DbConvert.cs
- PerformanceCounterPermissionEntry.cs
- OdbcFactory.cs
- DataSourceControl.cs
- SafeLibraryHandle.cs
- Binding.cs
- Psha1DerivedKeyGeneratorHelper.cs
- DataContractSet.cs
- CompilationUtil.cs
- Imaging.cs
- Vector3DAnimation.cs
- HttpCacheVary.cs
- PropertiesTab.cs
- DrawingServices.cs
- DataRecordInfo.cs
- XmlDownloadManager.cs
- TextTreeNode.cs
- CancelEventArgs.cs
- WindowsRichEditRange.cs
- ProfessionalColorTable.cs
- SchemaAttDef.cs
- AppDomain.cs
- ProxyGenerator.cs
- TextEditorThreadLocalStore.cs
- CultureInfo.cs
- ServerValidateEventArgs.cs
- CellCreator.cs
- PropertyChangeTracker.cs
- RequestQueryParser.cs
- ColumnResizeUndoUnit.cs
- MarkupCompilePass2.cs
- XPathPatternParser.cs
- InputBuffer.cs
- TextSearch.cs
- PathFigure.cs
- Privilege.cs
- InputLanguageEventArgs.cs
- ToolStripRenderer.cs
- GroupItemAutomationPeer.cs
- RtfToXamlLexer.cs
- CapabilitiesUse.cs
- HttpWebRequestElement.cs
- ConfigurationLoaderException.cs
- ProcessThread.cs
- RadialGradientBrush.cs
- EntityDataSourceState.cs
- ConfigurationElementCollection.cs
- PageParserFilter.cs
- ButtonAutomationPeer.cs
- ColumnHeader.cs
- ListViewGroupItemCollection.cs
- ProfileProvider.cs
- RowUpdatedEventArgs.cs
- _Win32.cs
- ConnectionStringsExpressionBuilder.cs
- UInt16Storage.cs
- MsmqHostedTransportConfiguration.cs
- Transform.cs
- TabItem.cs
- __Error.cs
- IIS7WorkerRequest.cs
- ViewKeyConstraint.cs
- Mouse.cs
- SolidBrush.cs
- TempFiles.cs
- FrameworkTextComposition.cs
- RecordsAffectedEventArgs.cs
- SHA512Managed.cs
- SiteMapDataSourceView.cs
- ConnectorSelectionGlyph.cs
- XmlTypeAttribute.cs
- MessagePropertyFilter.cs
- DetailsView.cs
- GeneralTransform2DTo3DTo2D.cs
- SiteMap.cs
- UnSafeCharBuffer.cs
- InputBinding.cs
- ReceiveCompletedEventArgs.cs
- CloudCollection.cs
- WindowsStatusBar.cs
- SmtpNetworkElement.cs
- SharedUtils.cs
- TcpAppDomainProtocolHandler.cs
- ComboBox.cs
- KeyValueConfigurationElement.cs
- LiteralControl.cs
- UserControl.cs
- ExecutedRoutedEventArgs.cs
- Conditional.cs
- BufferedStream2.cs
- FormParameter.cs