
# إدارة قوائم الانتظار

يدعم Queuety قوائم انتظار متعددة بأسماء مختلفة. يعالج كل عامل قائمة انتظار واحدة أو قائمة مرتبة من قوائم الانتظار (راجع [العمال](https://queuety.inline0.dev/ar/docs/features/workers#multi-queue-priorities))، ويمكن إيقاف القوائم واستئنافها كلٌّ على حدة.

## قوائم الانتظار المسماة

أرسل المهام إلى قوائم انتظار محددة:

```php
use Queuety\Queuety;

Queuety::dispatch( 'send_email', $payload )->on_queue( 'emails' );
Queuety::dispatch( 'process_image', $payload )->on_queue( 'media' );
Queuety::dispatch( 'sync_data', $payload )->on_queue( 'sync' );
```

شغّل العمال لكل قائمة انتظار:

```bash
wp queuety work --queue=emails
wp queuety work --queue=media
wp queuety work --queue=sync
```

قائمة الانتظار الافتراضية هي `default`. إذا لم تحدد قائمة، فستُرسل المهام إليها.

## الإيقاف المؤقت والاستئناف

أوقف قائمة انتظار مؤقتًا لمنع العمال من استلام مهام جديدة. ستكتمل المهام التي تجري معالجتها، لكن لن تُستلم مهام جديدة.

```php
Queuety::pause( 'emails' );
Queuety::resume( 'emails' );
```

تحقق مما إذا كانت قائمة انتظار متوقفة مؤقتًا:

```php
if ( Queuety::is_paused( 'emails' ) ) {
    // Queue is paused
}
```

عبر CLI:

```bash
wp queuety pause emails
wp queuety resume emails
```

يفيد ذلك أثناء النشر أو فترات الصيانة، حين تريد إيقاف المعالجة مؤقتًا دون إنهاء العامل.

## إحصاءات قائمة الانتظار

احصل على أعداد المهام مجمعة حسب الحالة:

```php
$stats = Queuety::stats(); // all queues
$stats = Queuety::stats( 'emails' ); // specific queue

// Returns: ['pending' => 12, 'processing' => 3, 'completed' => 150, 'failed' => 2, 'buried' => 1]
```

عبر CLI:

```bash
wp queuety status
wp queuety status --queue=emails
```

## المهام المدفونة

اعرض جميع المهام المدفونة (التي أخفقت بعد استنفاد محاولات إعادة التنفيذ):

```php
$buried = Queuety::buried(); // all queues
$buried = Queuety::buried( 'emails' ); // specific queue
```

أعد محاولة تنفيذها:

```php
Queuety::retry( $job_id );       // retry a specific job
Queuety::retry_buried();         // retry all buried jobs
```

## حذف المهام المكتملة

أزل المهام القديمة المكتملة للحفاظ على نظافة قاعدة البيانات:

```php
$count = Queuety::purge();     // uses QUEUETY_RETENTION_DAYS (default: 7)
$count = Queuety::purge( 30 ); // purge jobs older than 30 days
```

عبر CLI:

```bash
wp queuety purge
wp queuety purge --older-than=30
```
