Относительно простое ручное решение.
Вы можете попросить производителя создавать файлы и продолжать запись, пока не достигнет определенного размера / количества записей, в зависимости от того, что подходит вашему приложению.Затем производитель закрывает файл и запускает новый с согласованным алгоритмом именования.
Потребитель читает новые записи из файла, затем, когда он достигает согласованного максимального размера, закрывает и отменяет связь, а затем открывает следующий файл..