TaskScheduler class

A scheduler for managing concurrent scraping tasks

Constructors

TaskScheduler({required RateLimiter rateLimiter, required ResourceMonitor resourceMonitor, TaskSchedulerConfig config = const TaskSchedulerConfig(), Logger? logger})
Creates a new TaskScheduler

Properties

config → TaskSchedulerConfig
The configuration for the scheduler
final
currentConcurrencyLevel → int
Gets the current concurrency level
no setter
executingTaskCount → int
Gets the number of executing tasks
no setter
hashCode → int
The hash code for this object.
no setterinherited
isRunning → bool
Gets whether the scheduler is running
no setter
logger → Logger?
Logger for logging operations
final
queuedTaskCount → int
Gets the number of queued tasks
no setter
rateLimiter → RateLimiter
The rate limiter to use for domain-specific rate limiting
final
resourceMonitor → ResourceMonitor
The resource monitor to use for adaptive concurrency
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
totalTaskCount → int
Gets the total number of tasks
no setter

Methods

cancel(String taskId) → void
Cancels a task
cancelAll() → void
Cancels all tasks
enqueue<T>(ScrapingTask<T> task) → Future<T>
Enqueues a task
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
start() → void
Starts the scheduler
stop() → void
Stops the scheduler
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited