По мере выплевывания вывода программы (как бы в "реальном времени") мы должны записывать в буфер, а при анализе его учитывать количество накопившихся строк.
Спасибо за ответ. У меня как раз загвоздка с подсчетом строк в массиве байтов. Поэтому я подумал, что лучше воспользоваться готовым функционалом, типа bytes, err := reader.ReadBytes('\n')
Именно поэтому подумал, что должен быть один писатель (реализация io.Writer), а другой - читатель (асинхронный?).
Вот поэтому пытаюсь сообразить как это сделать.