PHPackages                             jamm/tasks - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. jamm/tasks

ActiveLibrary[Queues &amp; Workers](/categories/queues)

jamm/tasks
==========

Simple way to manage delayed execution in PHP scripts

2883PHP

Since Aug 12Pushed 12y ago4 watchersCompare

[ Source](https://github.com/jamm/Tasks)[ Packagist](https://packagist.org/packages/jamm/tasks)[ RSS](/packages/jamm-tasks/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

\#Tasks Simple way to manage delayed execution in PHP scripts
[![Build Status](https://camo.githubusercontent.com/a0988d3816fd041a4fa7fbfee8656ca385593a7d1a959a12a063edde7635a0d2/68747470733a2f2f7472617669732d63692e6f72672f6a616d6d2f5461736b732e706e67)](https://travis-ci.org/jamm/Tasks)

\##Where can it be used It can be used to execute delayed tasks - tasks, which takes long time to execute and result of their execution isn't necessary to generate output of requested script.
For example, it can be sending mail, or long database queries, or checking some info (IP whois data), delayed collaborating with remote API.

\##How to use **Tasks** it's a base to build your task-handlers.
Task-handlers it's classes, which will store tasks (when called from script) and execute restored tasks (when called from cron-script).
See example of task-handler in MailDelayed.php

To execute tasks, \\Tasks\\Executor should be called, it's usual work for cron - see [tasks\_cron.php](https://github.com/jamm/Tasks/blob/master/tasks_cron.php) for example.

\##Examples ###How to create Task-class See [MailDelayed.php](https://github.com/jamm/Tasks/blob/master/MailDelayed.php)

\###How to use Task-class

```
$taskStorage = new MemStorage(new \Jamm\Memory\RedisObject('tasks'));

$mailer = new MailDelayed($taskStorage);
$mailer->Send('to@example.com', 'Re: Hello', 'Hi, To!', 3);

```

\##Requirements ###PHP version: 5.3+

\###To store tasks in memory: Any object, implements Jamm\\Memory\\IMemoryStorage. For example, Jamm\\Memory\\RedisObject

\###Files storage No any external classes are required

TODO:
=====

[](#todo)

- Track results of tasks execution
- Auto-repeated tasks

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/27a19d7616678bc75505ded35bebf1b16d76a3586b103f4bf31f62c74646ba89?d=identicon)[OZ](/maintainers/OZ)

---

Top Contributors

[![e-oz](https://avatars.githubusercontent.com/u/526352?v=4)](https://github.com/e-oz "e-oz (22 commits)")

### Embed Badge

![Health badge](/badges/jamm-tasks/health.svg)

```
[![Health](https://phpackages.com/badges/jamm-tasks/health.svg)](https://phpackages.com/packages/jamm-tasks)
```

###  Alternatives

[league/geotools

Geo-related tools PHP 7.3+ library

1.4k5.3M26](/packages/league-geotools)[enqueue/enqueue

Message Queue Library

19820.0M56](/packages/enqueue-enqueue)[deliciousbrains/wp-background-processing

WP Background Processing can be used to fire off non-blocking asynchronous requests or as a background processing tool, allowing you to queue tasks.

1.1k409.8k6](/packages/deliciousbrains-wp-background-processing)[react/async

Async utilities and fibers for ReactPHP

2228.8M171](/packages/react-async)[react/promise-stream

The missing link between Promise-land and Stream-land for ReactPHP

11512.9M45](/packages/react-promise-stream)[illuminate/bus

The Illuminate Bus package.

6043.8M409](/packages/illuminate-bus)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
