Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 20 фев 2018, 00:10

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




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

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

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


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


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

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


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


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

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


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

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


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

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