Sdílet prostřednictvím


Scheduler.ThreadPool – vlastnost

Získá plánovač, který plánuje práci na ThreadPool.

Obor názvů:System.Reactive.Concurrency
Sestavení: System.Reactive (v System.Reactive.dll)

Syntax

'Declaration
Public Shared ReadOnly Property ThreadPool As ThreadPoolScheduler
    Get
'Usage
Dim value As ThreadPoolScheduler

value = Scheduler.ThreadPool
public static ThreadPoolScheduler ThreadPool { get; }
public:
static property ThreadPoolScheduler^ ThreadPool {
    ThreadPoolScheduler^ get ();
}
static member ThreadPool : ThreadPoolScheduler
static function get ThreadPool () : ThreadPoolScheduler

Hodnota vlastnosti

Typ: System.Reactive.Concurrency.ThreadPoolScheduler
Plánovač fondu vláken.

Poznámky

Plánovač ThreadPool plánuje akce, které mají být provedeny ve fondu vláken .NET. Tento plánovač je ideální pro krátkodobé operace.

Příklady

Tento příklad kódu používá operátor Generate k vygenerování sekvence celých čísel, které jsou dokonalé čtverce menší než 1000. Zpracování přidružené k operátoru generování je naplánováno tak, aby se spustilo ve fondu vláken .NET pomocí plánovače ThreadPool.

using System;
using System.Reactive.Linq;
using System.Reactive.Concurrency;

namespace Example
{
  class Program
  {
    static void Main()
    {
      //*********************************************************************************************//
      //*** Generate a sequence of integers which are the perfect squares that are less than 100  ***//
      //*********************************************************************************************//

      var obs = Observable.Generate(1,                      // Initial state value
                                    x => x * x < 1000,      // The termination condition. Terminate generation when false (the integer squared is not less than 1000)
                                    x => ++x,               // Iteration step function updates the state and returns the new state. In this case state is incremented by 1 
                                    x => x * x,             // Selector function determines the next resulting value in the sequence. The state of type in is squared.
                                    Scheduler.ThreadPool);  // The ThreadPool scheduler runs the generation on a thread pool thread instead of the main thread.

      using (IDisposable handle = obs.Subscribe(x => Console.WriteLine(x)))
      {
        Console.WriteLine("Press ENTER to exit...\n");
        Console.ReadLine();
      }
    }
  }
}

Následující výstup ukazuje spuštění ukázkového kódu.

Press ENTER to exit...

1
4
9
16
25
36
49
64
81
100
121
144
169
196
225
256
289
324
361
400
441
484
529
576
625
676
729
784
841
900
961

Viz také

Reference

Scheduler – třída

System.Reactive.Concurrency – obor názvů