Parallel Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce supporto per aree e cicli in parallelo.
public ref class Parallel abstract sealed
public static class Parallel
type Parallel = class
Public Class Parallel
- Ereditarietà
-
Parallel
Esempio
Questo esempio illustra diversi approcci all'implementazione di un ciclo parallelo usando più costrutti di linguaggio.
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
Commenti
La Parallel classe fornisce sostituzioni parallele dei dati basate su libreria per operazioni comuni, ad esempio cicli for, per ogni ciclo ed esecuzione di un set di istruzioni.
Metodi
For(Int32, Int32, Action<Int32,ParallelLoopState>) |
Esegue un ciclo |
For(Int32, Int32, Action<Int32>) |
Esegue un ciclo |
For(Int32, Int32, ParallelOptions, Action<Int32,ParallelLoopState>) |
Esegue un ciclo |
For(Int32, Int32, ParallelOptions, Action<Int32>) |
Esegue un ciclo |
For(Int64, Int64, Action<Int64,ParallelLoopState>) |
Esegue un ciclo |
For(Int64, Int64, Action<Int64>) |
Esegue un ciclo |
For(Int64, Int64, ParallelOptions, Action<Int64,ParallelLoopState>) |
Esegue un ciclo |
For(Int64, Int64, ParallelOptions, Action<Int64>) |
Esegue un ciclo |
For<TLocal>(Int32, Int32, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un ciclo |
For<TLocal>(Int32, Int32, ParallelOptions, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un ciclo |
For<TLocal>(Int64, Int64, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un ciclo |
For<TLocal>(Int64, Int64, ParallelOptions, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un ciclo |
ForAsync<T>(T, T, CancellationToken, Func<T,CancellationToken,ValueTask>) |
Esegue un ciclo for in cui le iterazioni possono essere eseguite in parallelo. |
ForAsync<T>(T, T, Func<T,CancellationToken,ValueTask>) |
Esegue un ciclo for in cui le iterazioni possono essere eseguite in parallelo. |
ForAsync<T>(T, T, ParallelOptions, Func<T,CancellationToken,ValueTask>) |
Esegue un ciclo for in cui le iterazioni possono essere eseguite in parallelo. |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(Partitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource,TLocal>(Partitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Esegue un'operazione |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState,Int64>) |
Esegue un'operazione |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState>) |
Esegue un'operazione |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource>) |
Esegue un'operazione |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
Esegue un'operazione |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
Esegue un'operazione |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource>) |
Esegue un'operazione |
ForEach<TSource>(OrderablePartitioner<TSource>, Action<TSource,ParallelLoopState,Int64>) |
Esegue un'operazione |
ForEach<TSource>(OrderablePartitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
Esegue un'operazione |
ForEach<TSource>(Partitioner<TSource>, Action<TSource,ParallelLoopState>) |
Esegue un'operazione |
ForEach<TSource>(Partitioner<TSource>, Action<TSource>) |
Esegue un'operazione |
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
Esegue un'operazione |
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource>) |
Esegue un'operazione |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
Esegue un'operazione |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
Esegue un'operazione |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
Esegue un'operazione |
ForEachAsync<TSource>(IEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
Esegue un'operazione |
ForEachAsync<TSource>(IEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
Esegue un'operazione |
ForEachAsync<TSource>(IEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
Esegue un'operazione |
Invoke(Action[]) |
Esegue ognuna delle azioni fornite, eventualmente in parallelo. |
Invoke(ParallelOptions, Action[]) |
Esegue ciascuna delle azioni fornite, possibilmente in parallelo, a meno che l'operazione non venga annullata dall'utente. |
Si applica a
Thread safety
Tutti i membri pubblici e protetti di Parallel sono thread-safe e possono essere usati simultaneamente da più thread.