Framework
Queues
Queues is a pure Swift queuing system that allows you to offload task responsibility to a side worker.
Overview
Some of the tasks this package works well for:
Sending emails outside of the main request thread
Performing complex or long-running database operations
Ensuring job integrity and resilience
Speeding up response time by delaying non-critical processing
Scheduling jobs to occur at a specific time
Topics
Classes
QueuesCommandThe command to start the Queue jobScheduleBuilderAn object that can be used to build a scheduled job
Protocols
AnyJobA type-erased version ofJob.AsyncJobA task that can be queued for future execution.AsyncJobEventDelegateRepresents an object that can receive notifications about job statusesAsyncQueueAsyncScheduledJobDescribes a job that can be scheduled and repeatedJobA task that can be queued for future execution.JobEventDelegateRepresents an object that can receive notifications about job statusesQueueA type that can store and retrieve jobs from a persistence layerQueuesDriverA new driver for QueuesScheduledJobDescribes a job that can be scheduled and repeated
Structures
JobDataHolds information about the Job that is to be encoded to the persistence store.JobEventDataData on a job sent via a notificationJobIdentifierAn identifier for a jobQueueContextThe context for a queue.QueueNameA specific queue that jobs are run on.QueueWorkerThe worker that runsJobs.QueuesConfigurationConfiguration parameters for the Queues module as a whole.
Enumerations
QueuesEventLoopPreferenceDetermines which event loop the jobs worker uses while executing jobs.