Parallel Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona compatibilidad con regiones y bucles paralelos.
public ref class Parallel abstract sealed
public static class Parallel
type Parallel = class
Public Class Parallel
- Herencia
-
Parallel
Ejemplos
En este ejemplo se muestran varios enfoques para implementar un bucle paralelo mediante varias construcciones de lenguaje.
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
Comentarios
La Parallel clase proporciona reemplazos paralelos de datos basados en biblioteca para operaciones comunes, como bucles for, para cada bucle y ejecución de un conjunto de instrucciones.
Métodos
For(Int32, Int32, Action<Int32,ParallelLoopState>) |
Ejecuta una bucle |
For(Int32, Int32, Action<Int32>) |
Ejecuta un bucle |
For(Int32, Int32, ParallelOptions, Action<Int32,ParallelLoopState>) |
Ejecuta un bucle |
For(Int32, Int32, ParallelOptions, Action<Int32>) |
Ejecuta un bucle |
For(Int64, Int64, Action<Int64,ParallelLoopState>) |
Ejecuta un bucle |
For(Int64, Int64, Action<Int64>) |
Ejecuta un bucle |
For(Int64, Int64, ParallelOptions, Action<Int64,ParallelLoopState>) |
Ejecuta un bucle |
For(Int64, Int64, ParallelOptions, Action<Int64>) |
Ejecuta un bucle |
For<TLocal>(Int32, Int32, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta un bucle |
For<TLocal>(Int32, Int32, ParallelOptions, Func<TLocal>, Func<Int32,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta un bucle |
For<TLocal>(Int64, Int64, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta un bucle |
For<TLocal>(Int64, Int64, ParallelOptions, Func<TLocal>, Func<Int64,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta un bucle |
ForAsync<T>(T, T, CancellationToken, Func<T,CancellationToken,ValueTask>) |
Ejecuta un bucle for en el que se pueden ejecutar iteraciones en paralelo. |
ForAsync<T>(T, T, Func<T,CancellationToken,ValueTask>) |
Ejecuta un bucle for en el que se pueden ejecutar iteraciones en paralelo. |
ForAsync<T>(T, T, ParallelOptions, Func<T,CancellationToken,ValueTask>) |
Ejecuta un bucle for en el que se pueden ejecutar iteraciones en paralelo. |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource,TLocal>(IEnumerable<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource,TLocal>(IEnumerable<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource,TLocal>(OrderablePartitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,Int64,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una |
ForEach<TSource,TLocal>(Partitioner<TSource>, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource,TLocal>(Partitioner<TSource>, ParallelOptions, Func<TLocal>, Func<TSource,ParallelLoopState,TLocal,TLocal>, Action<TLocal>) |
Ejecuta una operación |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState,Int64>) |
Ejecuta una operación |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource,ParallelLoopState>) |
Ejecuta una operación |
ForEach<TSource>(IEnumerable<TSource>, Action<TSource>) |
Ejecuta una operación |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
Ejecuta una operación |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
Ejecuta una operación |
ForEach<TSource>(IEnumerable<TSource>, ParallelOptions, Action<TSource>) |
Ejecuta una operación |
ForEach<TSource>(OrderablePartitioner<TSource>, Action<TSource,ParallelLoopState,Int64>) |
Ejecuta una operación |
ForEach<TSource>(OrderablePartitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState,Int64>) |
Ejecuta una operación |
ForEach<TSource>(Partitioner<TSource>, Action<TSource,ParallelLoopState>) |
Ejecuta una operación |
ForEach<TSource>(Partitioner<TSource>, Action<TSource>) |
Ejecuta una operación |
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource,ParallelLoopState>) |
Ejecuta una operación |
ForEach<TSource>(Partitioner<TSource>, ParallelOptions, Action<TSource>) |
Ejecuta una operación |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
Ejecuta una |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
Ejecuta una |
ForEachAsync<TSource>(IAsyncEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
Ejecuta una |
ForEachAsync<TSource>(IEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>) |
Ejecuta una |
ForEachAsync<TSource>(IEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>) |
Ejecuta una |
ForEachAsync<TSource>(IEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>) |
Ejecuta una |
Invoke(Action[]) |
Ejecuta cada una de las acciones proporcionadas, posiblemente en paralelo. |
Invoke(ParallelOptions, Action[]) |
Ejecuta todas las acciones proporcionadas, posiblemente en paralelo, a menos que el usuario cancele la operación. |
Se aplica a
Seguridad para subprocesos
Todos los miembros públicos y protegidos de Parallel son seguros para subprocesos y se pueden usar simultáneamente desde varios subprocesos.