Parallel Klasa

Definicja

Zapewnia obsługę pętli równoległych i regionów.Provides support for parallel loops and regions.

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

Przykłady

Ten przykład ilustruje kilka podejścia do implementowania pętli równoległej przy użyciu wielu konstrukcji językowych.This example demonstrates several approaches to implementing a parallel loop using multiple language constructs.

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

Uwagi

Parallel Klasa zawiera równoległe zamienniki danych opartych na bibliotece dla typowych operacji, takich jak pętle, dla każdej pętli, i wykonywania zestawu instrukcji.The Parallel class provides library-based data parallel replacements for common operations such as for loops, for each loops, and execution of a set of statements.

Metody

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

for Wykonuje pętlę, w której iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany.Executes a for loop in which iterations may run in parallel and the state of the loop can be monitored and manipulated.

For(Int32, Int32, Action<Int32>)

for Wykonuje pętlę, w której iteracje mogą działać równolegle.Executes a for loop in which iterations may run in parallel.

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

for Wykonuje pętlę, w której iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli może być monitorowany i manipulowany.Executes a for loop in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

for Wykonuje pętlę, w której iteracje mogą działać równolegle i można skonfigurować opcje pętli.Executes a for loop in which iterations may run in parallel and loop options can be configured.

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

for Wykonuje pętlę z 64-bitowymi indeksami, w których iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany.Executes a for loop with 64-bit indexes in which iterations may run in parallel and the state of the loop can be monitored and manipulated.

For(Int64, Int64, Action<Int64>)

for Wykonuje pętlę z 64-bitowymi indeksami, w których iteracje mogą działać równolegle.Executes a for loop with 64-bit indexes in which iterations may run in parallel.

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

for Wykonuje pętlę z 64-bitowymi indeksami, w których iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli może być monitorowany i manipulowany.Executes a for loop with 64-bit indexes in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

for Wykonuje pętlę z 64-bitowymi indeksami, w których iteracje mogą być uruchamiane równolegle i można skonfigurować opcje pętli.Executes a for loop with 64-bit indexes in which iterations may run in parallel and loop options can be configured.

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

for Wykonuje pętlę z danymi lokalnymi wątku, w których iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany.Executes a for loop with thread-local data in which iterations may run in parallel, and the state of the loop can be monitored and manipulated.

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

for Wykonuje pętlę z danymi lokalnymi wątku, w których iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli może być monitorowany i manipulowany.Executes a for loop with thread-local data in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

for Wykonuje pętlę z 64-bitowymi indeksami i danymi lokalnymi wątku, w których iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany.Executes a for loop with 64-bit indexes and thread-local data in which iterations may run in parallel, and the state of the loop can be monitored and manipulated.

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

for Wykonuje pętlę z 64-bitowymi indeksami i danymi lokalnymi wątku, w których iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i manipulować.Executes a for loop with 64-bit indexes and thread-local data in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each IEnumerable (w Visual Basic) z danymi lokalnymi wątku, w których iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data on an IEnumerable in which iterations may run in parallel and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each IEnumerable (w Visual Basic) z danymi lokalnymi wątku w przypadku, w którym iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data on an IEnumerable in which iterations may run in parallel, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each IEnumerable (w Visual Basic) z danymi lokalnymi wątku i 64-bitowymi indeksami dla, w których iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i manipulować. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data and 64-bit indexes on an IEnumerable in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each IEnumerable (w Visual Basic) z danymi lokalnymi wątku w przypadku, w którym iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i manipulować. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data on an IEnumerable in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each OrderablePartitioner<TSource> (w Visual Basic) przy użyciu danych z wątku lokalnego, w którym iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i manipulować. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data on a OrderablePartitioner<TSource> in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each OrderablePartitioner<TSource> (w Visual Basic) z indeksami 64-bitowymi i danymi lokalnymi wątku w, w których iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i foreach manipulować.Executes a foreach (For Each in Visual Basic) operation with 64-bit indexes and with thread-local data on a OrderablePartitioner<TSource> in which iterations may run in parallel , loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each Partitioner (w Visual Basic) za pomocą danych lokalnych wątku, w których iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data on a Partitioner in which iterations may run in parallel and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each Partitioner (w Visual Basic) przy użyciu danych z wątku lokalnego, w którym iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i manipulować. foreachExecutes a foreach (For Each in Visual Basic) operation with thread-local data on a Partitioner in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each IEnumerable (w Visual Basic) z indeksami 64-bitowymi, w których iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation with 64-bit indexes on an IEnumerable in which iterations may run in parallel, and the state of the loop can be monitored and manipulated.

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

Wykonuje operację foreach (For Each wIEnumerable Visual Basic), w której iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany.Executes a foreach (For Each in Visual Basic) operation on an IEnumerable in which iterations may run in parallel, and the state of the loop can be monitored and manipulated.

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

Wykonuje operację foreach (For Each wIEnumerable Visual Basic), w której iteracje mogą działać równolegle.Executes a foreach (For Each in Visual Basic) operation on an IEnumerable in which iterations may run in parallel.

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

Wykonuje operacjęFor Each IEnumerable (w Visual Basic) z indeksami 64-bitowymi w, w których iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli można monitorować i manipulować. foreachExecutes a foreach (For Each in Visual Basic) operation with 64-bit indexes on an IEnumerable in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operację foreach (For Each wIEnumerable Visual Basic) na, w której iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli może być monitorowany i manipulowany.Executes a foreach (For Each in Visual Basic) operation on an IEnumerable in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operację foreach (For Each wIEnumerable Visual Basic) na, w której iteracje mogą być uruchamiane równolegle, i można skonfigurować opcje pętli.Executes a foreach (For Each in Visual Basic) operation on an IEnumerable in which iterations may run in parallel and loop options can be configured.

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

Wykonuje operacjęFor Each OrderablePartitioner<TSource> (w Visual Basic), w której iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation on a OrderablePartitioner<TSource> in which iterations may run in parallel and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each OrderablePartitioner<TSource> (w Visual Basic) na, w której iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation on a OrderablePartitioner<TSource> in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each Partitioner (w Visual Basic) na, w której iteracje mogą działać równolegle, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation on a Partitioner in which iterations may run in parallel, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each Partitioner (w Visual Basic) na, w której iteracje mogą być uruchamiane równolegle. foreachExecutes a foreach (For Each in Visual Basic) operation on a Partitioner in which iterations may run in parallel.

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

Wykonuje operacjęFor Each Partitioner (w Visual Basic) na, w której iteracje mogą działać równolegle, można skonfigurować opcje pętli, a stan pętli może być monitorowany i manipulowany. foreachExecutes a foreach (For Each in Visual Basic) operation on a Partitioner in which iterations may run in parallel, loop options can be configured, and the state of the loop can be monitored and manipulated.

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

Wykonuje operacjęFor Each Partitioner (w Visual Basic) na, w której iteracje mogą być uruchamiane równolegle, i można skonfigurować opcje pętli. foreachExecutes a foreach (For Each in Visual Basic) operation on a Partitioner in which iterations may run in parallel and loop options can be configured.

Invoke(Action[])

Wykonuje każdą z podanych akcji, prawdopodobnie równolegle.Executes each of the provided actions, possibly in parallel.

Invoke(ParallelOptions, Action[])

Wykonuje każdą z podanych akcji, prawdopodobnie równolegle, chyba że operacja zostanie anulowana przez użytkownika.Executes each of the provided actions, possibly in parallel, unless the operation is cancelled by the user.

Dotyczy

Bezpieczeństwo wątkowe

Wszystkie publiczne i chronione elementy członkowskie Parallel są bezpieczne dla wątków i mogą być używane współbieżnie z wielu wątków.All public and protected members of Parallel are thread-safe and may be used concurrently from multiple threads.

Zobacz też