Сайт восстановлен из веб архива. Сейчас он доступен только для чтения, скачивание материалов также недоступно. Если у вас до сих пор есть какие-то вопросы по разработке серверов CRMP, вы можете перейти на актуальный портал: https://pawno-rus.com

Перейти к содержимому

Уважаемый гость, если у Вас возникли проблемы с регистрацией, просьба обратиться на почту admin@pawno-crmp.ru
Для полного доступа ко всем функциям, Вам необходимо зарегистрироваться и авторизоваться.
На нашем форуме, можно заказать рекламу в виде блока справа.


Фотография
Урок

Секундные паблики

- - - - - criminal russia crmp pawno уроки crmp крмп

  • Закрытая тема Тема закрыта
Сообщений в теме: 3

#1
offline   TheSeLToN

TheSeLToN
  • 186
    • Сообщений: 450
    • Регистрация: 21.09.14

Всем привет.

 

Ребята, сегодня речь пойдёт о секундных пабликах, которые на сегодняшний день, лично по моему мнению, есть в каждом моде.

Что такое секундный паблик? Это паблик, который обновляется каждую секунду с помощью таймера типа SetTimer.

К чему же я клоню? Клоню я к тому, что как раз из-за таких секундных пабликов, в моде происходит краш, сейчас объясню почему. В большинстве случаев краш мода из-за секундых пабликов происходит именно на хостинге. Проблема в том, что если у вас в секундном паблике находится слишком много кода, то серверная машина не успевает обработать весь этот код за одну секунду, и из-за этого в моде происходит краш.

Сейчас продемонстрирую решение данной проблемы.

 

 

По стандарту, мы создаём в паблике OnGameModeInit таймер типа SetTimer. Рассмотрим аргументы данного таймера.

Скриншот
1dfc6a871706ac19590e743a6da10ce8.png

Работать мы будем с аргументом repeating. Данный аргумент отвечает за то, будет ли функция повторятся или нет.

По стандарту мы привыкли ставить значение true, этого нельзя делать не в коем случае! Именно из-за этого в моде происходит краш.

Вы зададите вопрос: "Если мы выставим значение false, то наш секундный паблик не будет повторятся. Как сделать чтобы он повторялся?". Сделать это очень просто! Тот же самый таймер, который мы создавали в паблике OnGameModeInit, нам нужно прописать в нашем секундном паблике.

 

Пример:

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Пожалуйста войдите или зарегистрируйтесь чтобы увидить ссылку.

Вывод: пока код не обработается полностью, паблик не начнёт обновляться заново.

 

На этом всё!

Урок подготовил: TheSeLToN


Сообщение отредактировал TheSeLToN: 09 Апрель 2016 - 11:45


#2
offline   Drakoncik

Drakoncik
  • 53
    • Сообщений: 215
    • Регистрация: 01.04.15

1000, это 1 минута?


  • 0

#3
offline   TheSeLToN

TheSeLToN
  • 186
    • Сообщений: 450
    • Регистрация: 21.09.14
Drakoncik, 1000 - это одна секунда. 1000*60 - это уже минута, т.е. 60 секунд.

#4
offline   compan

compan
  • 626
    • Сообщений: 1 904
    • Регистрация: 13.03.14
В описании пишите про SetTimerEx, а в коде используете SetTimer.
 
И по-моему, это полный бред. Хоть сколько там кода, краш он никак не должен вызывать, максимум что - скорость выполнения поставленной задачи. Краш может произойти если только из-за какого-то определенного участка кода. Сугубо моё мнение.

  • 1



Темы с аналогичным тегами Урок, criminal russia, crmp, pawno, уроки crmp, крмп

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных


Данную тему посетили 102 пользователей