Может ли консоль переполниться слишком большим количеством строк записи?
Если у меня есть программа, которая выполняет консоль.Writeline несколько раз в секунду, и программа остается запущенной в течение длительного периода времени, может ли консоль переполниться слишком большим количеством строк? Я просто хочу знать, если он в конечном итоге бросит исключение ввода-вывода или если номер консоли.Writelines практически бесконечен.
3 ответов:
Нет, он не переполнится. Если вы проверите вкладкуOptions для быстрого доступа к командному окну, вы увидите опциюbuffer size . Это определяет максимальное количество строк, которые будут сохранены. Старые удаляются.
Как предлагает Скотт в своем комментарии ниже, вы можете получить доступ к этой настройке из вашего кода, используя
Console.BufferHeight. Значение по умолчанию для этого (когда я тестировал на своем компьютере разработки) является 300. Максимально допустимое значение - 32766 (Int16.MaxValue - 1).
Консоль имеет буфер, сколько строк она хранит, вы можете установить его в cmd.свойства exe:
Таким образом, после 300 строк он забудет, что было выведено в строке 1.

Comments