Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 28 мар 2024, 17:04

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
СообщениеДобавлено: 18 дек 2017, 09:50 
Не в сети
Аватара пользователя
Зарегистрирован:
29 авг 2017, 06:42
Последнее посещение:
20 мар 2024, 23:51
Сообщения: 69
Откуда: Санкт-Петербург
доброго времени суток, недавно переехал на линукс - заметил такую проблему,
я использую плагин менеджер карт на бхоп сервере (Deagles' Map Manager) и плагин заставляет сервер повисать при считывании файла списка карт (allmaps.txt или mapcycle.ini или любой другой).
сервер висит примерно минуту и за это время всех клиентов успевает кикнуть.
в общем это происходит потому что в маплисте примерно 2700 карт.

но у меня два вопроса:
почему сервер не повисал на винде с таким же маплистом ?
и можно ли это както поправить, не знаю, настроить чтото в самом линуксе, или сделать в плагине считывание порциями в течении определенного времени?
исходник на всякий случай прикрепляю, мало ли добрые люди помогут подправить.
https://hastebin.com/ureyofapol.cs

_________________
EHLL
https://forum.half-life.pro


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 18 дек 2017, 17:13 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
26 мар 2024, 21:42
Сообщения: 6864
Там слишком дофига всего, чтобы сказать в чем конкретно проблема.
Надо дебажить. Втыкать server_print вокруг чтения карт и смотреть где затык.
Причем, я не понял, а где они вообще читаются?
Код:
//set_task(2.0, "get_listing");   //loads mapcycle / allmaps.txt
Тут закомментировано.


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 18 дек 2017, 20:31 
Не в сети
Аватара пользователя
Зарегистрирован:
29 авг 2017, 06:42
Последнее посещение:
20 мар 2024, 23:51
Сообщения: 69
Откуда: Санкт-Петербург
есть подозрения что они читаются в блоке get_listing() (1960 строка) и load_maps() (2183 строка)
но это не точно
Цитата:
Надо дебажить. Втыкать server_print вокруг чтения карт и смотреть где затык.
можешь по подробнее пожалуйста, как это происходить должно ?

_________________
EHLL
https://forum.half-life.pro


Вернуться к началу
 Профиль 
  
СообщениеДобавлено: 18 дек 2017, 22:44 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
26 мар 2024, 21:42
Сообщения: 6864
Код:
new start = get_systime();
server_print("-----Start: %i", get_systime() - start);
... тут код для профилирования
server_print("-----End: %i", get_systime() - start);
В секундах выведет сколько заняло. Более мелкие интервалы в амхх я фз как померять.


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB