Согласно такому тесту:
<?php
// Файл /test/tester.php
<?php
@unlink("/test/document.txt");
$processTime = 0.0001;
for ($i = 1; $i <= 15; $i++) {
$processTime *= 2;
$time = $i === 1 ? 0 : $processTime;
if ($i === 2) {
sleep(2);
}
usleep($time * 1000000);
passthru("php /test/subject.php $i $time >> /test/log_file.log 2>&1 &");
}
<?php
// Файл /test/subject.php
$processId = $argv[1];
$processTime = $argv[2];
$fp = fopen(__DIR__ . "/document.txt", "a+");
flock($fp, LOCK_EX);
if($processId == 1) {
sleep(15);
$processTime = 15;
}
fwrite($fp, $processId . ': ' . $processTime . ' sec.' . "\n");
echo $processId . "\n";
flock($fp, LOCK_UN);
fclose($fp);
в /test/document.txt оказался лог:
1: 15 sec.
3: 0.0008 sec.
15: 3.2768 sec.
5: 0.0032 sec.
4: 0.0016 sec.
12: 0.4096 sec.
10: 0.1024 sec.
7: 0.0128 sec.
6: 0.0064 sec.
8: 0.0256 sec.
11: 0.2048 sec.
13: 0.8192 sec.
9: 0.0512 sec.
14: 1.6384 sec.
2: 0.0004 sec.
в /test/log_file.txt
1
3
15
5
4
12
10
7
6
8
11
13
9
14
2
Очередность не соблюдена(