На Linux необходимо смотреть на использование epoll для асинхронного ввода-вывода. Могло бы также стоить подстроить буферы сокета для не траты слишком большого количества пространства ядра для каждого подключения.
я предположил бы, что необходимо быть в состоянии достигнуть 100k соединений на разумной машине.
Использовать Encoding.Default
:
string content = File.ReadAllText(pendingChange.LocalItem, Encoding.Default);
Однако вы должны знать, что он читает его с использованием кодировки системы по умолчанию, которая может не совпадать с кодировкой файла. Не существует единой кодировки под названием ANSI, но обычно , когда люди говорят о «кодировке ANSI», они имеют в виду кодовую страницу Windows 1252 или что-то еще, что используется в их блоке.
Ваш код будет более надежным, если вы сможете узнать, какая точная кодировка используется.
Было бы разумно, если бы у вас были такие политики, которые также согласовали бы стандартную кодировку команды. Честно говоря, я не понимаю, почему какая-либо команда будет использовать кодировку, отличную от «Unicode (UtF-8 с подписью) - Codepage 65001» (за исключением, возможно, страниц ASPX со значительным нелатинским статическим содержанием, но даже тогда я могу » Я не вижу, как было бы сложно использовать UTF-8).
Предполагая, что вы все еще хотите разрешить смешанные кодировки, вам понадобится способ определить, в какой кодировке был сохранен файл, чтобы вы знали, в какую кодировку передать ReadAllText
. Это непросто определить из файла, однако использование Encoding.Default
, вероятно, будет работать нормально. Поскольку, скорее всего, вам нужно иметь дело только с двумя кодировками, VS (UTF-8 с подписью) и обычная кодировка ANSI, используемая вашими машинами (вероятно, Windows-1252).
Следовательно, использование
string content = File.ReadAllText(pendingChange.LocalItem, Encoding.Default);
будет работать. (Как я вижу, Джон уже написал). Это работает, потому что, когда спецификация UTF-8 (что VS означает под термином «подпись») присутствует в начале файла, предоставленный параметр кодировки игнорируется и все равно используется UTF-8. Следовательно, если файл сохраняется с использованием UTF-8, вы получаете правильные результаты, а где используется ANSI, вы, скорее всего, также получите правильные результаты.
Кстати, если вы обрабатываете заголовки файлов, не ReadAllLines
что проще?.
Кстати, если вы обрабатываете заголовки файлов, не ReadAllLines
что проще?.
Кстати, если вы обрабатываете заголовки файлов, не ReadAllLines
что проще?.