https://github.com/phpgt/daemon
Background process execution.
https://github.com/phpgt/daemon
background-jobs background-task exec pipes process subshell windows
Last synced: about 2 months ago
JSON representation
Background process execution.
- Host: GitHub
- URL: https://github.com/phpgt/daemon
- Owner: phpgt
- License: mit
- Created: 2019-03-04T16:17:36.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-09-12T13:29:15.000Z (9 months ago)
- Last Synced: 2025-04-19T23:45:15.264Z (about 2 months ago)
- Topics: background-jobs, background-task, exec, pipes, process, subshell, windows
- Language: PHP
- Homepage: https://www.php.gt/daemon
- Size: 856 KB
- Stars: 0
- Watchers: 2
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
Background process execution.
=============================Execute background processes asynchronously using an object oriented process pool.
***
## Example usage
```php
add("Ping", $pingProcess);
$pool->add("Loop", $infiniteProcess);
$pool->add("Date", $dateProcess);// Start the execution of all processes:
$pool->exec();// While processes are running, write their output to the terminal:
do {
echo $pool->read();
// Sleep to avoid hogging the CPU.
sleep(1);
}
while($pool->numRunning() > 0);
```Outputs something similar to:
```
[Ping] PING google.com (172.217.169.78) 56(84) bytes of data.
[Ping] 64 bytes from lhr48s09-in-f14.1e100.net (172.217.169.78): icmp_seq=1 ttl=52 time=8.78 ms
[Loop] background...
[Date] Mon 19 Aug 09:58:54 BST 2019
[Ping] 64 bytes from lhr48s09-in-f14.1e100.net (172.217.169.78): icmp_seq=2 ttl=52 time=8.75 ms
[Ping] 64 bytes from lhr48s09-in-f14.1e100.net (172.217.169.78): icmp_seq=3 ttl=52 time=8.75 ms
[Date] Mon 19 Aug 09:58:56 BST 2019
[Ping] 64 bytes from lhr48s09-in-f14.1e100.net (172.217.169.78): icmp_seq=4 ttl=52 time=8.75 ms
[Loop] background...
[Ping] 64 bytes from lhr48s09-in-f14.1e100.net (172.217.169.78): icmp_seq=5 ttl=52 time=8.80 ms
[Date] Mon 19 Aug 09:58:58 BST 2019
```Notice how the date process is only set to loop three times, and after it is complete the other two infinite processes continue to run.