Parallel Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia obsługę pętli równoległych i regionów.
public ref class Parallel abstract sealed
public static class Parallel
type Parallel = class
Public Class Parallel
- Dziedziczenie
-
Parallel
Przykłady
W tym przykładzie pokazano kilka metod implementowania pętli równoległej przy użyciu wielu konstrukcji językowych.
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
Klasa Parallel udostępnia oparte na bibliotece równoległe zamiany danych dla typowych operacji, takich jak pętle, dla każdej pętli i wykonywanie zestawu instrukcji.
Metody
For(Int32, Int32, Action<Int32,ParallelLoopState>) |
Wykonuje pętlę |
For(Int32, Int32, Action<Int32>) |
Wykonuje pętlę |
For(Int32, Int32, ParallelOptions, Action<Int32,ParallelLoopState>) |
Wykonuje pętlę |
For(Int32, Int32, ParallelOptions, Action<Int32>) |
Wykonuje pętlę |
For(Int64, Int64, Action<Int64,ParallelLoopState>) |
Wykonuje pętlę |
For(Int64, Int64, Action<Int64>) |
Wykonuje pętlę |
For(Int64, Int64, ParallelOptions, Action<Int64,ParallelLoopState>) |
Wykonuje pętlę |
For(Int64, Int64, ParallelOptions, Action<Int64>) |
Wykonuje pętlę |
For<TLocal>(Int32, Int32, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje pętlę |
For<TLocal>(Int32, Int32, ParallelOptions, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje pętlę |
For<TLocal>(Int64, Int64, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje pętlę |
For<TLocal>(Int64, Int64, ParallelOptions, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje pętlę |
ForAsync<T>(T, T, CancellationToken, Func<T,CancellationToken,ValueTask>) |
Wykonuje pętlę for, w której iteracji mogą być uruchamiane równolegle. |
ForAsync<T>(T, T, Func<T,CancellationToken,ValueTask>) |
Wykonuje pętlę for, w której iteracji mogą być uruchamiane równolegle. |
ForAsync<T>(T, T, ParallelOptions, Func<T,CancellationToken,ValueTask>) |
Wykonuje pętlę for, w której iteracji mogą być uruchamiane równolegle. |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(Partitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource,TLocal>(Partitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Wykonuje operację |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState,Int64>) |
Wykonuje operację |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState>) |
Wykonuje operację |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource>) |
Wykonuje operację |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
Wykonuje operację |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
Wykonuje operację |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource>) |
Wykonuje operację |
ForEach<TSource>(OrderablePartitioner<TSource>, Action<TSource,ParallelLoopState,Int64>) |
Wykonuje operację |
ForEach<TSource>(OrderablePartitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
Wykonuje operację |
ForEach<TSource>(Partitioner<TSource>, Action<TSource,ParallelLoopState>) |
Wykonuje operację |
ForEach<TSource>(Partitioner<TSource>, Action<TSource>) |
Wykonuje operację |
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
Wykonuje operację |
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource>) |
Wykonuje operację |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
Wykonuje operację |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
Wykonuje operację |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
Wykonuje operację |
ForEachAsync<TSource>(IEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
Wykonuje operację |
ForEachAsync<TSource>(IEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
Wykonuje operację |
ForEachAsync<TSource>(IEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
Wykonuje operację |
Invoke(Action[]) |
Wykonuje każdą z podanych akcji, prawdopodobnie równolegle. |
Invoke(ParallelOptions, Action[]) |
Wykonuje każdą z podanych akcji, prawdopodobnie równolegle, chyba że operacja zostanie anulowana przez użytkownika. |
Dotyczy
Bezpieczeństwo wątkowe
Wszystkie publiczne i chronione elementy członkowskie są Parallel bezpieczne wątkowo i mogą być używane współbieżnie z wielu wątków.