>>31
flock を SIGALRM で割り込めるだけでもやりようがあるんだけど、PHP だと割り込めないんだよね。
だから非ブロッキングな flock を sleep なり usleep しながら必要時間経つまで繰り返すのが現実的だと思う。
待ち人数も別途管理する必要があるだろうけど、flock 使うなら待ちの順番が保障されてるわけではないからそれほど意味が無いかも。