fflush(stdout);
не помог, но вывод на stderr (вместо stdout) принес результаты — при `seq 3` синхронизируется отлично (3 3 3 каждый раз), но вот при `seq 1000` уже идет расхождение (970 980 970 примерно такие числа). "\n" всегда при выводе на stdout стояла. Отсюда следует, что ошибка всё-таки в программе lastmsg.c. Правильно ли я понял? (добавил код программы)