Bagikan melalui


Parallel Kelas

Definisi

Menyediakan dukungan untuk perulangan dan wilayah paralel.

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

Contoh

Contoh ini menunjukkan beberapa pendekatan untuk menerapkan perulangan paralel menggunakan beberapa konstruksi bahasa.

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

Keterangan

Kelas ini Parallel menyediakan penggantian paralel data berbasis pustaka untuk operasi umum seperti untuk perulangan, untuk setiap perulangan, dan eksekusi serangkaian pernyataan.

Metode

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

Menjalankan perulangan for di mana iterasi dapat berjalan secara paralel dan status perulangan dapat dipantau dan dimanipulasi.

For(Int32, Int32, Action<Int32>)

Menjalankan perulangan for di mana iterasi dapat berjalan secara paralel.

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

Menjalankan perulangan for di mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan perulangan for di mana perulangan dapat berjalan secara paralel dan opsi perulangan dapat dikonfigurasi.

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

Menjalankan perulangan for dengan indeks 64-bit di mana iterasi dapat berjalan secara paralel dan status perulangan dapat dipantau dan dimanipulasi.

For(Int64, Int64, Action<Int64>)

Menjalankan perulangan for dengan indeks 64-bit di mana iterasi dapat berjalan secara paralel.

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

Menjalankan perulangan for dengan indeks 64-bit di mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan perulangan for dengan indeks 64-bit di mana iterasi dapat berjalan secara paralel dan opsi perulangan dapat dikonfigurasi.

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

Menjalankan perulangan for dengan data thread-local di mana iterasi dapat berjalan secara paralel, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan perulangan for dengan data thread-local di mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan perulangan for dengan indeks 64-bit dan data lokal utas di mana iterasi dapat berjalan secara paralel, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan perulangan for dengan indeks 64-bit dan data lokal utas di mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

ForAsync<T>(T, T, CancellationToken, Func<T,CancellationToken,ValueTask>)

Menjalankan untuk perulangan di mana iterasi dapat berjalan secara paralel.

ForAsync<T>(T, T, Func<T,CancellationToken,ValueTask>)

Menjalankan untuk perulangan di mana iterasi dapat berjalan secara paralel.

ForAsync<T>(T, T, ParallelOptions, Func<T,CancellationToken,ValueTask>)

Menjalankan untuk perulangan di mana iterasi dapat berjalan secara paralel.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) dengan data thread-local di IEnumerable mana iterasi dapat berjalan secara paralel dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) dengan data lokal utas di IEnumerable mana iterasi dapat berjalan secara paralel, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan operasi (For Each dalam Visual Basic) dengan data lokal utas foreach dan indeks 64-bit di IEnumerable mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan operasi (For Each dalam Visual Basic) dengan data lokal utas foreach di IEnumerable mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan operasi (For Each dalam Visual Basic) dengan data lokal utas foreach di OrderablePartitioner<TSource> mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) dengan indeks 64-bit dan dengan data thread-local di OrderablePartitioner<TSource> mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan operasi (For Each dalam Visual Basic) dengan data lokal utas foreach di Partitioner mana iterasi dapat berjalan secara paralel dan status perulangan dapat dipantau dan dimanipulasi.

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

Menjalankan operasi (For Each dalam Visual Basic) dengan data lokal utas foreach di Partitioner mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) dengan indeks 64-bit di IEnumerable mana iterasi dapat berjalan secara paralel, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di IEnumerable mana iterasi dapat berjalan secara paralel, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di mana iterasi IEnumerable dapat berjalan secara paralel.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) dengan indeks 64-bit di IEnumerable mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di IEnumerable mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di IEnumerable mana iterasi dapat berjalan secara paralel dan opsi perulangan dapat dikonfigurasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di OrderablePartitioner<TSource> mana iterasi dapat berjalan secara paralel dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di OrderablePartitioner<TSource> mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di Partitioner mana iterasi dapat berjalan secara paralel, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di Partitioner mana iterasi dapat berjalan secara paralel.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di Partitioner mana iterasi dapat berjalan secara paralel, opsi perulangan dapat dikonfigurasi, dan status perulangan dapat dipantau dan dimanipulasi.

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

foreach Menjalankan operasi (For Each dalam Visual Basic) di Partitioner mana iterasi dapat berjalan secara paralel dan opsi perulangan dapat dikonfigurasi.

ForEachAsync<TSource>(IAsyncEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>)

for-each Menjalankan operasi di mana iterasi IEnumerable<T> dapat berjalan secara paralel.

ForEachAsync<TSource>(IAsyncEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>)

for-each Menjalankan operasi di mana iterasi IEnumerable<T> dapat berjalan secara paralel.

ForEachAsync<TSource>(IAsyncEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>)

for-each Menjalankan operasi di mana iterasi IEnumerable<T> dapat berjalan secara paralel.

ForEachAsync<TSource>(IEnumerable<TSource>, CancellationToken, Func<TSource,CancellationToken,ValueTask>)

for-each Menjalankan operasi di mana iterasi IEnumerable<T> dapat berjalan secara paralel.

ForEachAsync<TSource>(IEnumerable<TSource>, Func<TSource,CancellationToken,ValueTask>)

for-each Menjalankan operasi di mana iterasi IEnumerable<T> dapat berjalan secara paralel.

ForEachAsync<TSource>(IEnumerable<TSource>, ParallelOptions, Func<TSource,CancellationToken,ValueTask>)

for-each Menjalankan operasi di mana iterasi IEnumerable<T> dapat berjalan secara paralel.

Invoke(Action[])

Menjalankan setiap tindakan yang disediakan, mungkin secara paralel.

Invoke(ParallelOptions, Action[])

Menjalankan setiap tindakan yang disediakan, mungkin secara paralel, kecuali operasi dibatalkan oleh pengguna.

Berlaku untuk

Keamanan Thread

Semua anggota publik dan terlindungi aman dari Parallel utas dan dapat digunakan secara bersamaan dari beberapa utas.

Lihat juga