1
0
mirror of https://github.com/danog/parallel.git synced 2024-11-26 20:34:40 +01:00
Commit Graph

639 Commits

Author SHA1 Message Date
Aaron Piotrowski
c1f6b62799
Check if watcher has already been cancelled
This seems to only happen in 7.1 for some reason… will perhaps need to dig further into why.
2019-03-08 11:26:48 -06:00
Aaron Piotrowski
2191d1145b
Cancel watcher if no threads remain 2019-03-08 11:20:47 -06:00
Aaron Piotrowski
3cce945d93
Note method to retreive stacktrace in exception messages 2019-03-02 09:19:00 -06:00
Aaron Piotrowski
7c8f936618
Autoloading → Bootstrap
Calling the file a boostrap makes more sense as more than defining an autoloader can be done in the file.
2019-02-22 16:10:30 -06:00
Aaron Piotrowski
7c8756c3a5
Add custom autoloader option for workers
Fixes #55 and #71.
2019-02-20 17:39:39 -06:00
Aaron Piotrowski
738f50afe7
Define AMP_CONTEXT_ID in contexts
Uses PID in processes or a sequential ID for threads.
2019-02-20 17:31:22 -06:00
Aaron Piotrowski
1150428281
Better handling of unserialization errors
Still fails even if E_NOTICE errors are not being reported.
2019-02-20 17:22:48 -06:00
Aaron Piotrowski
a0575b4930
Fix handling of invalid connections
Channel::receive() can throw ChannelException and SerializationException, so just catch everything here.
2019-02-18 18:44:30 -06:00
Aaron Piotrowski
a9e22e9ef8
Add getId() method; don't dup futures array 2019-02-18 18:43:11 -06:00
Aaron Piotrowski
b8b73cdea3
Use Future::select() 2019-02-18 13:05:43 -06:00
Aaron Piotrowski
36d3a3d963
Periodically check Future to see if thread crashed 2019-02-18 11:48:13 -06:00
Aaron Piotrowski
7fca17d7ef
Explicitly close channel when thread finishes 2019-02-18 10:32:16 -06:00
Aaron Piotrowski
5deeb81501
Skip parallel worker tests if extension is not installed 2019-02-18 10:27:07 -06:00
Aaron Piotrowski
7ee5a0aec7
phpdbg is crashing on travis 2019-02-18 10:01:29 -06:00
Aaron Piotrowski
8e19da949f
Remove unused imports 2019-02-18 09:43:14 -06:00
Aaron Piotrowski
a9a5807798
Continue using pthreads for workers
Will consider removing in the future, but a deprecation period should come before.
2019-02-18 09:41:56 -06:00
Aaron Piotrowski
f919371aee
Don't swallow SynchronizationError in ContextException 2019-02-18 09:38:42 -06:00
Aaron Piotrowski
f2e5224856
Unite Process and Parallel context interfaces
Allows scripts to be written for either context.
2019-02-17 23:50:41 -06:00
Aaron Piotrowski
c55f34c551
Update for krakjoe/parallel interrupt branch
Dumped the signal socket.
2019-02-15 18:25:29 -06:00
Aaron Piotrowski
638a1bb638
Implement thread killing
Will not interrupt blocking calls such as sleep, but in practice this shouldn't be much of a problem.
2019-02-14 18:12:51 -06:00
Aaron Piotrowski
23669b9572
Add reference/unreference methods to ChannelledSocket 2019-02-14 18:09:13 -06:00
Aaron Piotrowski
c60fc63cb6
Add timer in parallel context for kill breakpoint 2019-02-14 01:10:40 -06:00
Aaron Piotrowski
2d35051391
Update for krakjoe/parallel changes 2019-02-14 00:56:27 -06:00
Aaron Piotrowski
410c88e859
Serialize function arguments
Maybe this is a horrible idea, but we serialize everything else, so why not?
2019-02-14 00:34:45 -06:00
Aaron Piotrowski
ecaf0a854b
Add support for krakjoe/parallel 2019-02-14 00:34:45 -06:00
Aaron Piotrowski
398989d41d
Move test scripts to Fixtures directory 2019-02-13 18:19:46 -06:00
Aaron Piotrowski
c77843fa77
Catch parse error and provide better error message 2019-02-13 16:36:45 -06:00
Aaron Piotrowski
9b17d540a9
Move ConstantTask to Fixtures directory 2019-02-13 14:17:52 -06:00
Aaron Piotrowski
6b6e38cf70
Define constants in contexts for easy identification 2019-02-13 14:15:16 -06:00
Aaron Piotrowski
1ee8e202ed
Apply the same treatment to context exceptions
Sends info about previous exceptions thrown in the context to the parent.
2019-01-25 17:53:19 -06:00
Aaron Piotrowski
9236ade19f
Capture previous exceptions of exceptions thrown from Task::run() 2019-01-25 14:29:32 -06:00
Andrey Bolonin
11e46e0c27 Add PHP 7.3 on Travis (#58) 2019-01-10 18:47:24 +01:00
Niklas Keller
687776dc69 Adjust AppVeyor to PHP 7.3 2019-01-09 22:31:46 +01:00
Aaron Piotrowski
80c07011d6
Fix failing Process::join()
If the process is killed while joining, an exception was thrown from Process::kill().
2019-01-09 10:25:30 -06:00
Aaron Piotrowski
beafcdb140
Close channel in process when ended
Also restored destructor to DefaultPool to immediately kill workers instead of waiting until the end of the process.
2019-01-09 09:28:31 -06:00
Aaron Piotrowski
dc036dfa33
Use Promise\wait() in process-runner.php 2019-01-04 16:58:05 -06:00
Aaron Piotrowski
65d71c3526
Check for resolution of promise in process-runner.php 2019-01-04 16:46:53 -06:00
Aaron Piotrowski
ccf285bdcc
Cleanup test 2018-12-30 13:32:25 -06:00
Aaron Piotrowski
30b9a05691
Fix some doc links 2018-12-30 13:15:01 -06:00
Aaron Piotrowski
c0e6875b61
Add more worker docs 2018-12-30 13:10:58 -06:00
Aaron Piotrowski
f391d3549a
Improve error message when parent has exited 2018-12-30 13:08:38 -06:00
Aaron Piotrowski
2ac081575e
Wait for pending task in shutdown 2018-12-30 12:48:54 -06:00
Aaron Piotrowski
d7697ebd69
Gracefully shutdown workers on process exit 2018-12-30 12:38:17 -06:00
Eugene Leonovich
7a6e2aa8fd Ignore the travis directory on export 2018-12-27 23:07:47 +01:00
Aaron Piotrowski
1c9822a564
Fix #66 2018-12-19 18:47:43 -06:00
Max Furtuna
c4eed9535b
Test for #66 2018-12-19 18:34:06 -06:00
Niklas Keller
a5ae5b8d26 Fix headlines in docs 2018-11-19 22:58:51 +01:00
Pieter Hordijk
354e64db09 Fixed typo in exception message
When the process cannot be started it tells me "Staring the process failed".

You can stare at a process all you want, but it should be "Starting".
2018-11-08 14:29:35 -06:00
Pieter Hordijk
b9d6720c83 Fixed examples (#61)
* Fixed examples

CallableTask expects the parameters to be passed in as array

* Fixed worker-pool example

The task does not make available the arguments (anymore)
2018-11-08 14:29:07 -06:00
Aaron Piotrowski
f56e461200
Fix title 2018-11-04 11:37:19 -06:00