Parallel Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje podporu pro paralelní smyčky a oblasti.
public ref class Parallel abstract sealed
public static class Parallel
type Parallel = class
Public Class Parallel
- Dědičnost
-
Parallel
Příklady
Tento příklad ukazuje několik přístupů k implementaci paralelní smyčky pomocí více konstruktorů jazyka.
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
Poznámky
Třída Parallel poskytuje paralelní nahrazení dat založených na knihovně pro běžné operace, jako jsou smyčky for, pro každou smyčku a spuštění sady příkazů.
Metody
For(Int32, Int32, Action<Int32,ParallelLoopState>) |
Spustí smyčku |
For(Int32, Int32, Action<Int32>) |
Spustí smyčku |
For(Int32, Int32, ParallelOptions, Action<Int32,ParallelLoopState>) |
Spustí smyčku |
For(Int32, Int32, ParallelOptions, Action<Int32>) |
Spustí smyčku |
For(Int64, Int64, Action<Int64,ParallelLoopState>) |
Spustí smyčku |
For(Int64, Int64, Action<Int64>) |
Spustí smyčku |
For(Int64, Int64, ParallelOptions, Action<Int64,ParallelLoopState>) |
Spustí smyčku |
For(Int64, Int64, ParallelOptions, Action<Int64>) |
Spustí smyčku |
For<TLocal>(Int32, Int32, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Spustí smyčku |
For<TLocal>(Int32, Int32, ParallelOptions, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Spustí smyčku |
For<TLocal>(Int64, Int64, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Spustí smyčku |
For<TLocal>(Int64, Int64, ParallelOptions, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Spustí smyčku |
ForAsync<T>(T, T, CancellationToken, Func<T,CancellationToken,ValueTask>) |
Spustí smyčku for, ve které iterace mohou běžet paralelně. |
ForAsync<T>(T, T, Func<T,CancellationToken,ValueTask>) |
Spustí smyčku for, ve které iterace mohou běžet paralelně. |
ForAsync<T>(T, T, ParallelOptions, Func<T,CancellationToken,ValueTask>) |
Spustí smyčku for, ve které iterace mohou běžet paralelně. |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(Partitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource,TLocal>(Partitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
|
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState,Int64>) |
|
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState>) |
|
ForEach<TSource>(IEnumerable<TSource>, Action<TSource>) |
|
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
|
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
|
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource>) |
|
ForEach<TSource>(OrderablePartitioner<TSource>, Action<TSource,ParallelLoopState,Int64>) |
|
ForEach<TSource>(OrderablePartitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
|
ForEach<TSource>(Partitioner<TSource>, Action<TSource,ParallelLoopState>) |
|
ForEach<TSource>(Partitioner<TSource>, Action<TSource>) |
|
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
|
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource>) |
|
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
|
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
|
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
|
ForEachAsync<TSource>(IEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
|
ForEachAsync<TSource>(IEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
|
ForEachAsync<TSource>(IEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
|
Invoke(Action[]) |
Spustí každou z poskytnutých akcí, případně paralelně. |
Invoke(ParallelOptions, Action[]) |
Spustí každou z poskytnutých akcí, případně paralelně, pokud uživatel operaci nezruší. |
Platí pro
Bezpečný přístup z více vláken
Všechny veřejné a chráněné členy souboru Parallel jsou bezpečné pro přístup z více vláken a mohou být použity současně z více vláken.