Size: a a a

cxx.Дискуссионная

2020 February 15

RM

Roy Mustang in cxx.Дискуссионная
Так получается тогда мне recv winsock'а будет по кускам присылать пакет
источник

TS

Till Schneider in cxx.Дискуссионная
Roy Mustang
Чтобы проверять потом по размеру весь ли я пакет получил?
да, только ты можешь его получать очень долго
источник

RM

Roy Mustang in cxx.Дискуссионная
Я просто смотрю, в той библиотеке что я использую, как то реализовано это дело
источник

RM

Roy Mustang in cxx.Дискуссионная
Я вот 1 мб данных послал и в callback api 1 мб получил
источник

TS

Till Schneider in cxx.Дискуссионная
Roy Mustang
Я вот 1 мб данных послал и в callback api 1 мб получил
ну хорошо
источник

RM

Roy Mustang in cxx.Дискуссионная
Щас сижу и думаю, выгодно отправить 1000 пакетов отдельно друг за другом одним вызовом Update для Net в тике или же одним пакетом отправить весь размер пакета
источник

RM

Roy Mustang in cxx.Дискуссионная
К примеру, если у меня 1000 юзеров сидят на Proxy сервере и сервер внезапно упал, лучше пройтись циклом по всем игрокам что были на Proxy сервере, запихнуть их в вектор и вызвать один раз сериализатор и отправить большой буффер данных на Login сервер или же в цикле по всем юзерам запись пакетов в Net write по одному
источник

RM

Roy Mustang in cxx.Дискуссионная
Мне кажется, что так, что так результат один
источник

RM

Roy Mustang in cxx.Дискуссионная
Надо бенчмарк проводить походу опять
источник

TS

Till Schneider in cxx.Дискуссионная
@ivario @urandon @isenbaev ПОДАРКИ!
источник

RM

Roy Mustang in cxx.Дискуссионная
Потому что для меня разницы никакой нет, что разом я шлю всех клиентов инфу - это столько же итераций в цикле, что по одному послать
источник

RM

Roy Mustang in cxx.Дискуссионная
К тому же, библиотеки сети у меня устроена так
источник

RM

Roy Mustang in cxx.Дискуссионная
Что когда я вызываю write в функции, то она только записывает все пакеты в один общий буффер
источник

RM

Roy Mustang in cxx.Дискуссионная
и при следующем вызове Update лишь посылает
источник

RM

Roy Mustang in cxx.Дискуссионная
То есть, не сразу отправляет как вызвал write, а при следующем вызове Update api (тика) у библиотеки сети
источник

RM

Roy Mustang in cxx.Дискуссионная
Может ли быть такое, что один большой буффер одним запросом пытается библиотека послать на клиент? А там уже на низком уровне большой буффер разбивается на MTU ?
источник

O

Ofee in cxx.Дискуссионная
Roy Mustang
Что произойдет в таком случае
Зависит от реализации пост каждого элемента твоей сети, от железа и его драйверов до фреймворка, если таковой имеется, у тебя нет гарантий ни на что
источник

RM

Roy Mustang in cxx.Дискуссионная
В документации сказано
источник

RM

Roy Mustang in cxx.Дискуссионная
At the time of calling this function, it is not actually transmitted, and it attempts to transmit as much as possible when calling the next update function.
However, depending on the state of the OS or socket, it may not always be transmitted with the next call.
источник

RM

Roy Mustang in cxx.Дискуссионная
Не мог найти англ версию локализации
источник