В настоящее время я планирую создать выделенный сервер на C# для игры XNA, в которой одновременно смогут подключаться до 32 игроков. У меня был опыт работы в сети с System.Net, но раньше мне не приходилось сталкиваться с довольно большим количеством игроков.Может ли Asyncronous TCP network быть лучшим вариантом для выделенного сервера с 32 игроками, играющими одновременно на C#?
Я знаю из сердца, что создание и уничтожение потоков (особенно для каждого игрока) не будет хорошей идеей, и я не уверен, использовать ли ThreadPool или нет, из-за «ожидания в строке, когда нет потоки доступны "природы. Итак, я решил (почти как мой единственный последний вариант) использовать Async для обработки большого количества клиентов.
Но я по-прежнему не уверен, является ли это мудрым выбором, или если я должен использовать что-то еще в соответствии с моими потребностями.
Извинения, если этот вопрос звучит мрачно, но я довольно сильно потрясен - помогите оценить!
Вы не предоставили нам достаточно информации. Вы не сказали нам, если это игра в режиме реального времени, или если это пошаговая игра и т. Д. – jason
Игра будет в реальном времени 2-м стрелком с разрушаемым «плиткой», основанной на мире. Таким образом, я буду ожидать битв загрузки сервера в разы. Я только планирую когда-либо отправлять полные мировые данные, когда клиент подключается/изменяет карту, и я планирую только отправлять изменения в мир на протяжении всего игрового процесса. – seandewar5