Bagikan melalui


BatchWorker Kelas

Definisi

Pola umum untuk pekerja asinkron yang melakukan tugas kerja, ketika diberi tahu, untuk melayani pekerjaan yang diantrekan. Setiap siklus kerja menangani SEMUA pekerjaan yang diantrekan. Jika pekerjaan baru tiba selama siklus kerja, siklus lain akan dijadwalkan. Pekerja tidak pernah menjalankan lebih dari satu instans siklus kerja pada satu waktu, dan tidak menggunakan sumber daya saat menganggur. Ini menggunakan TaskScheduler.Current untuk menjadwalkan siklus kerja.

public abstract class BatchWorker
type BatchWorker = class
Public MustInherit Class BatchWorker
Warisan
BatchWorker
Turunan

Konstruktor

BatchWorker()

Pola umum untuk pekerja asinkron yang melakukan tugas kerja, ketika diberi tahu, untuk melayani pekerjaan yang diantrekan. Setiap siklus kerja menangani SEMUA pekerjaan yang diantrekan. Jika pekerjaan baru tiba selama siklus kerja, siklus lain akan dijadwalkan. Pekerja tidak pernah menjalankan lebih dari satu instans siklus kerja pada satu waktu, dan tidak menggunakan sumber daya saat menganggur. Ini menggunakan TaskScheduler.Current untuk menjadwalkan siklus kerja.

Bidang

lockable

Pola umum untuk pekerja asinkron yang melakukan tugas kerja, ketika diberi tahu, untuk melayani pekerjaan yang diantrekan. Setiap siklus kerja menangani SEMUA pekerjaan yang diantrekan. Jika pekerjaan baru tiba selama siklus kerja, siklus lain akan dijadwalkan. Pekerja tidak pernah menjalankan lebih dari satu instans siklus kerja pada satu waktu, dan tidak menggunakan sumber daya saat menganggur. Ini menggunakan TaskScheduler.Current untuk menjadwalkan siklus kerja.

Properti

CancellationToken

Mendapatkan atau mengatur pembatalan yang digunakan untuk membatalkan pekerja batch ini.

Metode

IsIdle()

Periksa apakah pekerja ini menganggur.

Notify()

Beri tahu pekerja bahwa ada lebih banyak pekerjaan.

Notify(DateTime)

Menginstruksikan pekerja batch untuk menjalankan lagi untuk memeriksa pekerjaan, jika belum berjalan lagi pada saat itu, pada ditentukan utcTime.

NotifyAndWaitForWorkToBeServiced()

Beri tahu pekerja bahwa ada lebih banyak pekerjaan, dan tunggu siklus kerja saat ini, dan juga siklus kerja berikutnya jika saat ini ada pekerjaan yang tidak diservis.

WaitForCurrentWorkToBeServiced()

Tunggu siklus kerja saat ini, dan juga siklus kerja berikutnya jika saat ini ada pekerjaan yang tidak dilayakan.

Work()

Terapkan anggota ini di kelas turunan untuk menentukan apa yang merupakan siklus kerja

Berlaku untuk