Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Как лучше притормозить отключение плагина?

Статус
Закрыто для дальнейших ответов.

Bars

Старожил
Девелопер
Пользователь
Баллы
173
В TerrainControl есть команда для аутпута карты биомов в рисунок.png, однако где-то на 15% происходит ошибка и сервер вырубается, однако за это время карта продолжает выводиться в картинку и дальше, но не успевает (если небольшой радиус выставить, то успевает, но этот радиус не охватывает всю карту, чем безполезен). Как у себя в плагине можно задержать процесс отключения сервера ещё на 15 секунд? Например AutoSaveWorld это как-то удаётся, "чучуть" :)
 
Можно запустиить новый поток. Пока все потоки не будут завершены виртуалка не завершит процесс.
 
Видимо это все делается в основном потоке, что по сути полный бред. Как вообще до этого додумываются, кругом говнокодеры...
в spigot.yml
Код:
  timeout-time: 60
Выстави сколько тебе надо секунд. По умолчанию если что-то повисло и за 60сек не отвисло, сервер выдает краш и пытается перезагрузится.
 
Видимо это все делается в основном потоке, что по сути полный бред. Как вообще до этого додумываются, кругом говнокодеры...
в spigot.yml
Код:
  timeout-time: 60
Выстави сколько тебе надо секунд. По умолчанию если что-то повисло и за 60сек не отвисло, сервер выдает краш и пытается перезагрузится.
Вы непрально поняли суть вопроса. Мне надо как раз чтобы всё зависло, т.к. сервер сразу отключается, а надо дождаться пока экспортируется карта биомов, что, к счастью, продолжает происходить даже в процессе отключения сервера.
 
А фиг так получится, автор мода не слышал про многопоточность. В чем проблема выставить таймаут на дофига секунд? И выключения не будет. Вот еще следующая строчка конфига
Код:
  restart-on-crash: true
на false. Ну если спигот, хз что там есть на других ядрах. Вот шевчик похоже знает.
 
А фиг так получится, автор мода не слышал про многопоточность. В чем проблема выставить таймаут на дофига секунд? И выключения не будет. Вот еще следующая строчка конфига
Код:
  restart-on-crash: true
на false. Ну если спигот, хз что там есть на других ядрах. Вот шевчик похоже знает.
Это - не краш, и рестарт у меня выключен априори, т.к. я использую для запуска BukkitGUI, а чтобы запускался сервер в обычной консоли, мне не нужно.
 
Даже если его просто отключить, то через timeout-time он тупо выключтся, а не рестартанёт.
 
Ну так почему бы и не выставить в этом timeout-time побольше секунд. Плагином можно сервер только повесить, что собственно и делают разные какахи типа InvRestore. Я конечно не проверял, но судя по всему что-то делается в onDisable(), можно туда Thread.sleep попробовать воткнуть.
 
Короче пока не актуально, решил что куда лучше будет как и раньше - тупо карту нарисовать. Без экспансии, но я располагаю минимум двумя фишечками, которые мне позволяет её сохранить со всеми её ресурсами.
Да, за советы спасибо!
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх