Горутины помогут, если обработка строки дорогая и независимая. Для добавления одной точки узким местом обычно будет ввод-вывод, а координация может лишь замедлить работу.
Если есть большая задача, например, файл на 10 ГБ, внутри которого построчные настройки, и нужно обработать каждую строку (например, поставить точку в конце), помогут ли горутины ускорить эту работу?
Горутины помогут, если обработка строки дорогая и независимая. Для добавления одной точки узким местом обычно будет ввод-вывод, а координация может лишь замедлить работу.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Горутины помогут, если обработка строки дорогая и независимая. Для добавления одной точки узким местом обычно будет ввод-вывод, а координация может лишь замедлить работу.
Начните с потокового чтения и буферизованной записи, не загружая 10 ГБ целиком. Если профилирование показывает CPU-нагрузку, используйте ограниченный пул с номерами строк и восстановлением порядка. Учитывайте максимальную длину строки и размер буферов. Для изменения файла безопаснее писать новый результат и переключать его после успешного завершения, а не перезаписывать источник во время чтения.