DLight\Application\Queue
Mô tả: abstract base cho các queue driver. Bạn không dùng trực tiếp class này để chạy job,
mà dùng các implementation (ví dụ Drive\Queue\DbQueue).
Namespace / đăng ký
- Namespace:
DLight\Application - File:
src/Application/Queue.php
Public API (contract)
install(): voidpush(string $job, array $data = [], ?int $availableAt = null): voidpop(string $job): array(rỗng nếu không có)process(string $job, callable|string|null $handler = null): ?array(null nếu không có)getQueue(string $job): arraygetQueueSize(string $job): intgetQueueStatus(string $job): stringgetQueueProgress(string $job): float(0..100)setProgress(int $id, float $progress): void
Demo (dùng DbQueue)
use DLight\Application\Drive\Queue\DbQueue;
$q = new DbQueue();
$q->install();
// Job name có thể là "Class" hoặc "Class@method"
$q->push(App\\Jobs\\ExampleJob::class, ['user_id' => 123]);
// Process 1 job (handler mặc định lấy từ job name)
$q->process(App\\Jobs\\ExampleJob::class);