100% 正確ではありませんが、この SO answerをご覧ください。
私は自分自身に興味があったので、次の簡単なスクリプトを書きました。
test.php
require_once __DIR__ . '/vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$log = new Logger( 'Test' . `tasklist | grep php | wc -l` );
$log->pushHandler(new StreamHandler(__DIR__ . '/file.log', Logger::DEBUG));
while ( true ) {
$log->debug( "This is a single log line" );
}
Win 8.1 Quad-Core マシンで 8 つのスクリプトを並行して実行しました。
最初の実行で、改行文字が間違って配置されるというまれな問題が発生しました。同じ行に 2 つのログ ダンプが表示され、その後に空白行 (改行文字) が表示されます。
2回目の実行では、しゃっくりはまったく発生しませんでした。
(*) 1 つのスクリプトが私のマシンに 10000 行を書き込むことに注意してください。そのため、毎秒平均 80000 行でまれに問題が発生する (そして 2 回目の実行で何も発生しない) ことは... かなり悪くありません。
乾杯。