PHPackages                             cursedcoder/eprocess - 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. cursedcoder/eprocess

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

cursedcoder/eprocess
====================

Multi-threading framework?

0.5(10y ago)650MITPHPPHP &gt;=5.6

Since Sep 2Pushed 10y ago6 watchersCompare

[ Source](https://github.com/cursedcoder/eprocess)[ Packagist](https://packagist.org/packages/cursedcoder/eprocess)[ Docs](https://github.com/cursedcoder/eprocess)[ RSS](/packages/cursedcoder-eprocess/feed)WikiDiscussions master Synced 5d ago

READMEChangelog (10)Dependencies (9)Versions (12)Used By (0)

EProcess
========

[](#eprocess)

[![Build Status](https://camo.githubusercontent.com/0180b105b4ac3900800fdb2dc4428d237ed024fbb6f81f35bc28ad898d3d6510/68747470733a2f2f7472617669732d63692e6f72672f637572736564636f6465722f6570726f636573732e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/cursedcoder/eprocess)

The idea is to have multiple non-blocking contexts with a transparent inter-process communication out of the box.

This lib is just a PoC, use at your own risk.

Check out examples in `examples/` dir.

Features
========

[](#features)

- 3 adapters: child process (react), pthreads, symfony process (not tested)
- inter-process communication between childs-parent using unix sockets
- simple serialization for objects(jms serializer), arrays, scalars
- async event-driven flow (react eventloop)
- integration with frameworks, see `EProcess\Application\ContainerApplication` for Symfony
- child workers can have own child workers (i.e. `main -> worker -> worker ...`)

Install&amp;try
===============

[](#installtry)

- `git clone https://github.com/cursedcoder/eprocess`
- `cd eprocess`
- `composer install`
- `php examples/simple.php`

Example explains features
=========================

[](#example-explains-features)

Be aware this snippet below is only for explanatory reasons and will not work out (or at least yet).

For real examples see `exampes/simple.php` and related.

```
use EProcess\Application\Application;
use EProcess\Application\ApplicationFactory;

class Data
{
  // jms serializer metadata
  private $id;
  // setters getters etc.
}

class Main extends Application // like that one in c++
{
    public function run()
    {
        $worker = $this->createWorker(MyWorker::class); // create external non-blocking thread of MyWorker class
        $worker->send('any_event', 'Hello my worker!');
        $worker->on('hello_master', function() {
            // Receive back-call from child
        });
    }
}

class MyWorker extends Application
{
    public function run()
    {
        $this->on('any_event', function($data) {
            echo 'Got any_event event from my master: ' . $data; // data == Hello my worker
            // Still we can send any event back to master
            $this->send('hello_master');
            $this->send('send-any-data', new Data()); // you can send any object, array or scalar
            // object should have jms serializer metadata to be serialized
        });

        $this->getSubscribedEvents();
    }
}

ApplicationFactory::launch(Main::class);
```

You need to have proper autoloading established in order to use this example.

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 85.5% 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.

###  Release Activity

Cadence

Every ~59 days

Recently: every ~2 days

Total

11

Last Release

3685d ago

PHP version history (2 changes)0.0.1PHP &gt;=5.5

0.0.7PHP &gt;=5.6

### Community

Maintainers

![](https://www.gravatar.com/avatar/5f2fe18fbe0fab9c3cbeab4249bb1c8f888a12df91c59db565aae4d8f1601f58?d=identicon)[dark](/maintainers/dark)

---

Top Contributors

[![cursedcoder](https://avatars.githubusercontent.com/u/899452?v=4)](https://github.com/cursedcoder "cursedcoder (47 commits)")[![421p](https://avatars.githubusercontent.com/u/1667946?v=4)](https://github.com/421p "421p (4 commits)")[![haswelldev](https://avatars.githubusercontent.com/u/1667946?v=4)](https://github.com/haswelldev "haswelldev (4 commits)")

---

Tags

asyncnon-blockingreactpthreadsipcchild-process

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/cursedcoder-eprocess/health.svg)

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

###  Alternatives

[amphp/amp

A non-blocking concurrency framework for PHP applications.

4.4k123.4M323](/packages/amphp-amp)[revolt/event-loop

Rock-solid event loop for concurrent PHP applications.

91943.6M138](/packages/revolt-event-loop)[amphp/byte-stream

A stream abstraction to make working with non-blocking I/O simple.

392116.2M104](/packages/amphp-byte-stream)[workerman/phpsocket.io

A server side alternative implementation of socket.io in PHP based on Workerman

2.3k578.6k16](/packages/workerman-phpsocketio)[amphp/socket

Non-blocking socket connection / server implementations based on Amp and Revolt.

26439.0M119](/packages/amphp-socket)[amphp/parser

A generator parser to make streaming parsers simple.

14952.8M16](/packages/amphp-parser)

PHPackages © 2026

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