К сожалению я потеряла те скриншоты и не смогу показать их… постараюсь восстановить старую версию сервера из гитхаба и выложить сюда ссылку. Как я поняла такая ошибка не единична (как и на форумах об этом говорили, так и наши учителя/сис админ), и так как я не понимаю с чем она связанна и почему при падении клиента не рвалось соединение, а получилось зацикливание — пришлось делать новый протокол
Сейчас (в связи с конкурсами) мне трудно написать новую статью, но уверяю вас что количество потоков снизилось.
Сервер активно дописывается до новой версии, возможно в будущем мне придётся переписать его снова/пересмотреть использование некоторых переменных.
Про языки… Rust -> отличный быстрый язык, который не подвержен резким падениям из-за не пойми чего (не пустые слова, на C# падали консольные приложения без явной ошибки в коде). Тем более Rust я понимаю гораздо лучше чем C#.
Это всё есть небольшой эксперимент, который скоро завершится классным проектом (сейчас есть небольшая команда помогающая написать какой-никакой GUI, надеюсь что сможем :) )
Проводились ли измерения быстродействия того же сервера при однопоточном режиме работы или хотя бы при сокращении потоков до 2-3?
Да, и поэтому пришлось выбрать эту модель (вот сам сервер файл запуска сервера).
При однопоточном режиме сервер очень медленный, при 2-3 потока, быстрее но не так как надо. В следующей статье я опишу почему получилось именно так, спасибо за заинтересованность этой темой ))
На момент создания клиента я думала сделать сервер с моделью «Приоритет сервера» т.е. клиенты отправляют нажатые клавиши на сервер, он их обрабатывает и создаёт сообщения для всех клиентов. Поэтому я и выбрала структуры (т.к. я не представляю другого представления танчиков в расте).
Хорошая идея! Вы не первый кто мне пишет об этом, но на момент написание этой статьи мне казались структуры самым оптимальным вариантом, я заменю их на классы (в ближайшее время). Спасибо за критику и совет!)
А по поводу кода… я изменю его как только будет готово взаимодействие с сервером перед началом игры (уже пишу третью функцию), все изменения есть в рипозитории )
Так как я уверена, что он не упадёт не пойми из-за чего.
Сервер активно дописывается до новой версии, возможно в будущем мне придётся переписать его снова/пересмотреть использование некоторых переменных.
Про языки… Rust -> отличный быстрый язык, который не подвержен резким падениям из-за не пойми чего (не пустые слова, на C# падали консольные приложения без явной ошибки в коде). Тем более Rust я понимаю гораздо лучше чем C#.
Это всё есть небольшой эксперимент, который скоро завершится классным проектом (сейчас есть небольшая команда помогающая написать какой-никакой GUI, надеюсь что сможем :) )
Да, и поэтому пришлось выбрать эту модель (вот сам сервер файл запуска сервера).
При однопоточном режиме сервер очень медленный, при 2-3 потока, быстрее но не так как надо. В следующей статье я опишу почему получилось именно так, спасибо за заинтересованность этой темой ))
Я ещё только изучаю гитхаб, поэтому не додумалась до этого )
Это не WinForm версия…
А по поводу кода… я изменю его как только будет готово взаимодействие с сервером перед началом игры (уже пишу третью функцию), все изменения есть в рипозитории )