PSDataCollection<T> Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
build Thread Safe buffer used with PowerShell Hosting interfaces.
generic <typename T>
public ref class PSDataCollection : IDisposable, System::Collections::Generic::ICollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IList<T>, System::Collections::IList, System::Runtime::Serialization::ISerializable
[System.Serializable]
public class PSDataCollection<T> : IDisposable, System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.IList, System.Runtime.Serialization.ISerializable
public class PSDataCollection<T> : IDisposable, System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.IList, System.Runtime.Serialization.ISerializable
[<System.Serializable>]
type PSDataCollection<'T> = class
interface IList<'T>
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IList
interface ICollection
interface IDisposable
interface ISerializable
type PSDataCollection<'T> = class
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IList<'T>
interface ICollection
interface IList
interface IDisposable
interface ISerializable
type PSDataCollection<'T> = class
interface IList<'T>
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IList
interface ICollection
interface IDisposable
interface ISerializable
Public Class PSDataCollection(Of T)
Implements ICollection(Of T), IDisposable, IEnumerable(Of T), IList, IList(Of T), ISerializable
Type Parameters
- T
- Inheritance
-
PSDataCollection<T>
- Attributes
- Implements
Constructors
PSDataCollection<T>() |
Default Constructor. |
PSDataCollection<T>(IEnumerable<T>) |
Creates a PSDataCollection that includes all the items in the IEnumerable and invokes Complete(). |
PSDataCollection<T>(Int32) |
Initializes a new instance with the specified capacity
|
PSDataCollection<T>(SerializationInfo, StreamingContext) |
Creates a PSDataCollection from an ISerializable context. |
Properties
BlockingEnumerator |
Indicates whether the data collection should have a blocking enumerator by default. Currently only when a PowerShell object is associated with the data collection, a reference count is added which causes the enumerator to be blocking. This prevents the use of PSDataCollection without a PowerShell object. This property fixes the same. |
Count |
Gets the number of elements contained in the buffer. |
DataAddedCount |
An int that tells the frequency of Data Added events fired. Raises the DataAdded event only when data has been added a multiple of this many times, or when collection can receive no more data, if further data is added past the last event prior to completion. |
EnumeratorNeverBlocks |
If this is set to true, then the enumerator returned from GetEnumerator() will never block. |
IsAutoGenerated |
Determines whether this PSDataCollection was created implicitly in support of data collection (for example, a workflow that wants to capture output but hasn't provided an instance of the PSDataCollection to capture it with.) |
IsOpen |
A boolean which determines if the buffer is open. |
IsReadOnly |
Gets a value indicating whether the buffer is read-only. |
Item[Int32] |
Gets or sets the element at the specified index. |
SerializeInput |
Serializes all input by default. This is supported only for PSDataCollections of PSObject. |
Methods
Add(T) |
Adds an item to the thread-safe buffer. |
Clear() |
Removes all items from the buffer. |
Complete() |
Completes insertions to the buffer. Subsequent Inserts to the buffer will result in an InvalidOperationException. |
Contains(T) |
Determines whether the buffer contains an element with a specific value. |
CopyTo(T[], Int32) |
Copies the elements of the buffer to a specified array, starting at a particular index. |
Dispose() |
Public dispose method. |
Dispose(Boolean) |
Release all the resources. |
GetEnumerator() |
Returns an enumerator that iterates through the elements of the buffer. |
GetObjectData(SerializationInfo, StreamingContext) |
Implements the ISerializable contract for serializing a PSDataCollection. |
IndexOf(T) |
Determines the index of a specific item in the buffer. |
Insert(Int32, T) |
Inserts an item to the buffer at the specified index. |
InsertItem(Guid, Int32, T) |
Inserts an item into the buffer at a specified index. |
ReadAll() |
Makes a shallow copy of all the elements currently in this collection and clears them from this collection. This will not result in a blocking call. Calling this method might have side effects on the enumerator. When this method is called, the behavior of the enumerator is not defined. |
Remove(T) |
Removes the first occurrence of a specified item from the buffer. |
RemoveAt(Int32) |
Removes the item at the specified index. |
RemoveItem(Int32) |
Removes the item at a specified index. |
Operators
Events
Completed |
Event fired when the buffer is completed. |
DataAdded |
Event fired when objects are done being added to the underlying buffer. |
DataAdding |
Event fired when objects are being added to the underlying buffer. |
Explicit Interface Implementations
ICollection.CopyTo(Array, Int32) |
Copies the elements of the collection to a specified array, starting at a particular index. |
ICollection.IsSynchronized |
Gets a value that indicates whether the buffer is synchronized. |
ICollection.SyncRoot |
Gets the object used to synchronize access to the thread-safe buffer. |
IEnumerable.GetEnumerator() |
Returns an enumerator that iterates through the buffer. |
IList.Add(Object) |
Adds an element to the buffer. |
IList.Contains(Object) |
Determines whether the collection contains an element with a specific value. |
IList.IndexOf(Object) |
Determines the zero-based index of an element in the buffer. |
IList.Insert(Int32, Object) |
Inserts an object into the buffer at a specified index. |
IList.IsFixedSize |
Gets a value that indicates whether the buffer is fixed in size. |
IList.IsReadOnly |
Gets a value that indicates whether the buffer is read-only. |
IList.Item[Int32] |
Gets or sets the element at the specified index. |
IList.Remove(Object) |
Removes the first occurrence of a specified object as an element from the buffer. |