Может ли одноранговая сеть сервер-клиент выйти из синхронизации, и если да, то как это исправить? - PullRequest
0 голосов
/ 19 сентября 2019

Я создаю простой текстовый симулятор битвы (похожий на покемона) в Java.Я написал сервер с несколькими потоками.Один для принятия 2 игроков и 1 коммуникационный поток для каждого игрока на стороне сервера.

Создание сервера работает, игроки могут успешно подключиться, и после этого информация о статистике игроков отправляется от клиента, к серверу, а затем к другому клиенту, который также работает.

Битва теперь начинается, и это - то, где это становится грязным.Когда игрок 1 отправляет ввод, используя (2 варианта на выбор), я получаю исключения, потому что строка, которая должна сообщить другому игроку, что сделал первый игрок, получена методом, который должен послать int для обновления итога здоровьяоба игрока. Я прошел через код с тонкой расческой и не могу понять, в чем проблема.Для каждого отправленного сообщения Comthread ожидает сообщения для прочтения.

Мой вопрос: может ли это быть потому, что потоки не синхронизированы?Если так, как я могу написать лучший способ общения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...