Нет предела размера буфера в bufio.NewReader.ReadString ()? - PullRequest
0 голосов
/ 10 октября 2018

У меня есть клиент сокета, который читает ответ, подобный этому:

message, err := bufio.NewReader(conn).ReadString('\n')

Он работает отлично, но метод ReadString, похоже, не имеет ограничений на размер буфера.

Возможно ли этодобавить один?Я мало что нашел в документе Буфио.

1 Ответ

0 голосов
/ 10 октября 2018

Например,

message, err := bufio.NewReaderSize(conn, 1024).ReadString('\n')

Чтобы ограничить чтение данных, используйте io.LimitedReader.Например,

rdr := bufio.NewReader(&io.LimitedReader{R: conn, N: 1024})
message, err := rdr.ReadString('\n')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...