Parallel Klas

Definitie

Biedt ondersteuning voor parallelle lussen en regio's.

public ref class Parallel abstract sealed
public static class Parallel
type Parallel = class
Public Class Parallel
Overname
Parallel

Voorbeelden

In dit voorbeeld ziet u verschillende benaderingen voor het implementeren van een parallelle lus met behulp van meerdere taalconstructies.

using System.Threading.Tasks;   
class Test
{
    static int N = 1000;

    static void TestMethod()
    {
        // Using a named method.
        Parallel.For(0, N, Method2);

        // Using an anonymous method.
        Parallel.For(0, N, delegate(int i)
        {
            // Do Work.
        });

        // Using a lambda expression.
        Parallel.For(0, N, i =>
        {
            // Do Work.
        });
    }

    static void Method2(int i)
    {
        // Do work.
    }
}
Imports System.Threading.Tasks

Module Module1

    Sub Main()
        Dim N As Integer = 1000

        ' Using a named method
        Parallel.For(0, N, AddressOf Method2)

        ' Using a lambda expression.
        Parallel.For(0, N, Sub(i)
                               ' Do Work
                           End Sub)
    End Sub

    Sub Method2(ByVal i As Integer)
        ' Do work.
    End Sub

End Module

Opmerkingen

De Parallel klasse biedt parallelle vervangingen van gegevens op basis van bibliotheken voor algemene bewerkingen, zoals voor lussen, voor elke lussen en het uitvoeren van een set instructies.

Methoden

Name Description
For(Int32, Int32, Action<Int32,ParallelLoopState>)

Voert een for lus uit waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

For(Int32, Int32, Action<Int32>)

Hiermee wordt een for lus uitgevoerd waarin iteraties parallel kunnen worden uitgevoerd.

For(Int32, Int32, ParallelOptions, Action<Int32,ParallelLoopState>)

Voert een for lus uit waarin iteraties parallel kunnen worden uitgevoerd, lusopties kunnen worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

For(Int32, Int32, ParallelOptions, Action<Int32>)

Hiermee wordt een for lus uitgevoerd waarin iteraties parallel kunnen worden uitgevoerd en lusopties kunnen worden geconfigureerd.

For(Int64, Int64, Action<Int64,ParallelLoopState>)

Voert een for lus uit met 64-bits indexen waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

For(Int64, Int64, Action<Int64>)

Hiermee wordt een for lus uitgevoerd met 64-bits indexen waarin iteraties parallel kunnen worden uitgevoerd.

For(Int64, Int64, ParallelOptions, Action<Int64,ParallelLoopState>)

Hiermee wordt een for lus uitgevoerd met 64-bits indexen waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en kan de status van de lus worden bewaakt en gemanipuleerd.

For(Int64, Int64, ParallelOptions, Action<Int64>)

Hiermee wordt een for lus uitgevoerd met 64-bits indexen waarin iteraties parallel kunnen worden uitgevoerd en lusopties kunnen worden geconfigureerd.

For<TLocal>(Int32, Int32, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Hiermee wordt een for lus uitgevoerd met thread-lokale gegevens waarin iteraties parallel kunnen worden uitgevoerd en kan de status van de lus worden bewaakt en gemanipuleerd.

For<TLocal>(Int32, Int32, ParallelOptions, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een for lus uit met thread-lokale gegevens waarin iteraties parallel kunnen worden uitgevoerd, lusopties kunnen worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

For<TLocal>(Int64, Int64, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een for lus uit met 64-bits indexen en thread-lokale gegevens waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

For<TLocal>(Int64, Int64, ParallelOptions, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een for lus uit met 64-bits indexen en thread-lokale gegevens waarin iteraties parallel kunnen worden uitgevoerd, lusopties kunnen worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met thread-lokale gegevens op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met thread-lokale gegevens op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>)

Hiermee wordt een bewerking foreach (For Each uitgevoerd in Visual Basic) met thread-lokale gegevens en 64-bits indexen op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en kan de status van de lus worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met thread-lokale gegevens op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met thread-lokale gegevens op een OrderablePartitioner<TSource> waarin iteraties parallel kunnen worden uitgevoerd, lusopties kunnen worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met 64-bits indexen en met thread-lokale gegevens op een OrderablePartitioner<TSource> waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(Partitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met thread-lokale gegevens op een Partitioner waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource,TLocal>(Partitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>)

Voert een bewerking foreach (For Each in Visual Basic) uit met thread-lokale gegevens op een Partitioner waarin iteraties parallel kunnen worden uitgevoerd, lusopties kunnen worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState,Int64>)

Hiermee wordt een bewerking foreach (For Each uitgevoerd in Visual Basic) met 64-bits indexen op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd en kan de status van de lus worden bewaakt en gemanipuleerd.

ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState>)

Voert een bewerking foreach (For Each in Visual Basic) uit op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource>(IEnumerable<TSource>, Action<TSource>)

Hiermee wordt een bewerking foreach (For Each in Visual Basic) uitgevoerd op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd.

ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>)

Voert een bewerking foreach (For Each in Visual Basic) uit met 64-bits indexen op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en de status van de lus kan worden bewaakt en bewerkt.

ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>)

Voert een bewerking foreach (For Each in Visual Basic) uit op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd, lusopties kunnen worden geconfigureerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource>)

Voert een bewerking foreach (For Each in Visual Basic) uit op een IEnumerable waarin iteraties parallel kunnen worden uitgevoerd en lusopties kunnen worden geconfigureerd.

ForEach<TSource>(OrderablePartitioner<TSource>, Action<TSource,ParallelLoopState,Int64>)

Hiermee wordt een bewerking foreach (For Each in Visual Basic) uitgevoerd op een OrderablePartitioner<TSource> waarin iteraties parallel kunnen worden uitgevoerd en de status van de lus kan worden bewaakt en gemanipuleerd.

ForEach<TSource>(OrderablePartitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>)

Hiermee voert u een bewerking foreach (For Each in Visual Basic) uit op een OrderablePartitioner<TSource> waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en kan de status van de lus worden bewaakt en gemanipuleerd.

ForEach<TSource>(Partitioner<TSource>, Action<TSource,ParallelLoopState>)

Hiermee wordt een bewerking foreach (For Each uitgevoerd in Visual Basic) op een Partitioner waarin iteraties parallel kunnen worden uitgevoerd en kan de status van de lus worden bewaakt en gemanipuleerd.

ForEach<TSource>(Partitioner<TSource>, Action<TSource>)

Hiermee wordt een bewerking foreach (For Each in Visual Basic) uitgevoerd op een Partitioner waarin iteraties parallel kunnen worden uitgevoerd.

ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>)

Hiermee voert u een bewerking foreach (For Each in Visual Basic) uit op een Partitioner waarin iteraties parallel kunnen worden uitgevoerd, kunnen lusopties worden geconfigureerd en kan de status van de lus worden bewaakt en gemanipuleerd.

ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource>)

Voert een bewerking foreach (For Each in Visual Basic) uit op een Partitioner waarin iteraties parallel kunnen worden uitgevoerd en lusopties kunnen worden geconfigureerd.

Invoke(Action[])

Hiermee worden alle opgegeven acties uitgevoerd, mogelijk parallel.

Invoke(ParallelOptions, Action[])

Voert elk van de opgegeven acties uit, mogelijk parallel, tenzij de bewerking wordt geannuleerd door de gebruiker.

Van toepassing op

Veiligheid thread

Alle openbare en beveiligde leden van Parallel zijn thread-veilig en kunnen gelijktijdig worden gebruikt vanuit meerdere threads.

Zie ook