Documentation
¶
Overview ¶
Package memory provides an in-process priority queue backend for the queue package. It is fast and simple but not distributed or persistent — tasks are lost when the process exits.
Index ¶
- type Queue
- func (q *Queue) Ack(ctx context.Context, taskID string, status queue.TaskStatus, errMsg string) error
- func (q *Queue) AppendLog(ctx context.Context, entry *queue.TaskLogEntry) error
- func (q *Queue) Cancel(ctx context.Context, taskID string) error
- func (q *Queue) Close() error
- func (q *Queue) Dequeue(ctx context.Context, timeout time.Duration) (*queue.Task, error)
- func (q *Queue) Enqueue(ctx context.Context, task *queue.Task) error
- func (q *Queue) Get(ctx context.Context, taskID string) (*queue.Task, error)
- func (q *Queue) ListLogs(ctx context.Context, taskID string, limit int) ([]*queue.TaskLogEntry, error)
- func (q *Queue) Name() string
- func (q *Queue) Position(ctx context.Context, taskID string) (int, error)
- func (q *Queue) Recover(ctx context.Context) ([]*queue.Task, error)
- func (q *Queue) Requeue(ctx context.Context, taskID string) error
- func (q *Queue) Stats(ctx context.Context) (queue.QueueStats, error)
- func (q *Queue) UpdateProgress(ctx context.Context, taskID string, progress int) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Queue ¶
type Queue struct {
// contains filtered or unexported fields
}
Queue is an in-memory priority queue.
func (*Queue) Ack ¶
func (q *Queue) Ack(ctx context.Context, taskID string, status queue.TaskStatus, errMsg string) error
Ack marks a task as completed.
func (*Queue) Dequeue ¶
Dequeue removes and returns the highest-priority pending task. If no task is available, it blocks up to timeout (if > 0).
func (*Queue) ListLogs ¶
func (q *Queue) ListLogs(ctx context.Context, taskID string, limit int) ([]*queue.TaskLogEntry, error)
ListLogs returns execution log entries for a task, newest first.
func (*Queue) Recover ¶
Recover returns pending and interrupted tasks for restart recovery. In-memory queue has no persistence — nothing to recover.
Click to show internal directories.
Click to hide internal directories.