diff --git a/example1.php b/example1.php new file mode 100644 index 0000000..5e9adaa --- /dev/null +++ b/example1.php @@ -0,0 +1,49 @@ +add("one"); +$TQ->add("two"); +$TQ->add("three"); +$TQ->add("four"); +$TQ->add("five"); + + + + +// wait until all threads exit + +while( count( $TQ->threads() ) ){ // there are existing processes in the background? + sleep(1); // optional + + echo "waiting for all jobs done...\n"; + $TQ->tick(); // mandatory! + +} + +echo "all process finished.\n"; + diff --git a/example2.php b/example2.php new file mode 100644 index 0000000..2d635a4 --- /dev/null +++ b/example2.php @@ -0,0 +1,64 @@ +add("one"); +$TQ->add("two"); +$TQ->add("three"); +$TQ->add("four"); +$TQ->add("five"); +$TQ->add("six"); + +// Oops! We changed our mind, let's remove awaiting jobs. +// Existing threads will run, but jobs not started will be removed. +$TQ->flush(); + + +// let's add jobs again. +$TQ->add("seven"); +$TQ->add("eight"); +$TQ->add("nine"); +$TQ->add("ten"); +$TQ->add("eleven"); +$TQ->add("twelve"); + + + + +// wait until all threads exit + +while( $numberOfThreads = count($TQ->threads()) ){ + usleep(500000); // optional + + echo "waiting for all ($numberOfThreads) jobs done...\n"; + $TQ->tick(); // mandatory! + + // ha-ha! we can change the number of parallel executions realtime. + $TQ->queueSize = 4; + +} + +echo "all process finished.\n"; +