1
0
mirror of https://github.com/danog/parallel.git synced 2024-12-12 17:17:20 +01:00
Commit Graph

45 Commits

Author SHA1 Message Date
Aaron Piotrowski
17b6b6272f
Add void types were able 2019-08-27 18:14:56 -05:00
c73c6d0a77
Cleanup temporary files (#82)
Modified by @trowski.
2019-08-27 10:04:40 -05:00
Niklas Keller
53aa422eaf Remove unused import 2019-05-11 19:13:47 +02:00
Aaron Piotrowski
1acd54e848
Use closure within parallel runner 2019-05-01 13:30:57 -05:00
Aaron Piotrowski
2d02d964f4
Use Events::setBlocking() added to parallel extension 2019-05-01 12:08:52 -05:00
Aaron Piotrowski
7303b8dcf3
Fix exiting parallel context 2019-04-30 14:47:37 -05:00
Aaron Piotrowski
3ec7f33142
Fix namespace 2019-04-29 10:34:57 -05:00
Aaron Piotrowski
66ca530f0d
Move static parallel extension properties into internal class 2019-04-29 10:19:32 -05:00
Aaron Piotrowski
740696275c
Add a couple tests and ignore some blocks only executed in threads 2019-03-08 13:37:52 -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
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
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
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
c77843fa77
Catch parse error and provide better error message 2019-02-13 16:36:45 -06:00
Aaron Piotrowski
6b6e38cf70
Define constants in contexts for easy identification 2019-02-13 14:15:16 -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
f391d3549a
Improve error message when parent has exited 2018-12-30 13:08:38 -06:00
Aaron Piotrowski
87d728ea35
Fix argument order
Oddly PhpStorm didn't highlight this as wrong.
2018-10-24 22:35:27 -05:00
Aaron Piotrowski
fe293c09bb
Improve process communication error handling 2018-10-23 22:14:51 -05:00
Aaron Piotrowski
3c0baa4e43
Remove catch of ChannelException
This catch block may hide errors that the user makes. If the parent died, another exception will be generated and caught below when trying to send the ExitFailure object.
2018-10-23 21:28:24 -05:00
Aaron Piotrowski
fd6c531d87
Add eof check on STDIN 2018-10-23 21:26:26 -05:00
Aaron Piotrowski
f1b0a59b86
Final all the things! 2018-10-21 10:54:46 -05:00
Aaron Piotrowski
cb2aa9c59c
Use 127.0.0.1 instead of localhost
Avoids DNS lookup issues on Windows.
2018-10-21 10:09:28 -05:00
Aaron Piotrowski
8d60fdbb64
Trigger error in process runner before exiting 2018-10-21 10:03:26 -05:00
Aaron Piotrowski
bf08e2fdf4
Remove output buffering in child process; update require scoping 2018-10-15 00:15:56 -05:00
Aaron Piotrowski
fa864692e7
Read key in chunks
Not entirely sure if this is necessary given the expected length, but it doesn't hurt either.
2018-10-11 18:11:02 -05:00
Aaron Piotrowski
9db273d484
Unset key if process connect times out; update docblocks 2018-10-11 11:14:14 -05:00
Aaron Piotrowski
4cf26d4dfb
Authenticate worker when connecting to IPC 2018-10-10 18:31:34 -05:00
Aaron Piotrowski
9e40d3aa0c
Use TCP for IPC on Windows 2018-10-09 09:12:23 -05:00
Aaron Piotrowski
b654463339
Fix code style 2018-10-07 09:50:45 -05:00
Aaron Piotrowski
cb5ea736d4
Improve process IPC
Processes now use a shared server socket instead of stdin and stdout for IPC.
2018-10-07 09:31:35 -05:00
Niklas Keller
c1114188b6 Improve error messages 2018-03-21 13:49:52 +01:00
Aaron Piotrowski
0a474e18c0
Avoid cyclic references in threads 2017-12-26 23:16:44 -06:00
Aaron Piotrowski
d89c9e3dee
Catch serialization failure in process runner 2017-12-13 10:31:43 -06:00
Aaron Piotrowski
852f580915
Remove $this magic from Thread callback
Channel is now passed as the first argument.
2017-12-10 16:53:51 -06:00
Aaron Piotrowski
4d4841f449
Refactor Process to make writing child processes simple 2017-12-10 16:39:49 -06:00
Aaron Piotrowski
4426686e54
Reorganize 2017-12-07 21:26:55 -06:00
Aaron Piotrowski
3f7f21875d
Exit if constructing channel fails. 2017-11-29 23:02:36 -06:00
Aaron Piotrowski
3aff92fec4
Consolodate process and thread contexts into Context namespace 2017-11-29 15:01:32 -06:00