Перезапуск скрипта раз в минуту |
Здравствуйте, гость ( Вход | Регистрация )
Перезапуск скрипта раз в минуту |
12.11.2010, 0:06
Сообщение
#1
|
|
Абсолютный новичок Группа: Пользователи Сообщений: 8 Регистрация: 31.3.2010 Пользователь №: 6 536 Спасибо сказали: 1 раз |
Как реализовать перезапуск определенного скрипта раз в минуту?
Может быть поможете простеньким скриптом? |
|
|
12.11.2010, 0:21
Сообщение
#2
|
|
Продвинутый участник Группа: Пользователи Сообщений: 157 Регистрация: 19.1.2010 Из: Волгоград Пользователь №: 5 756 Спасибо сказали: 77 раз |
Код Count = 0 AllCount = 5 Period = 60000 OnStartup = function() TmrMan.AddTimer(Period) end OnTimer = function(Id) Count = Count + 1 Core.SendToAll("Я таймер, сработал "..Count.." раз") if Count >= AllCount then TmrMan.RemoveTimer(Id) end end как-то так |
|
|
12.11.2010, 0:45
Сообщение
#3
|
|
Белый Волк Группа: Пользователи Сообщений: 1 723 Регистрация: 11.9.2008 Из: г.Томск Пользователь №: 516 Спасибо сказали: 657 раз |
lankmv, вот я чуток переделал скриптик из этой темы:
Код local sName = "Название_другого_скрипта.lua" -- имя скрипта с которым работаем local iTime = 1 -- период переключений в минутах function OnStartup() local found for _, tData in ipairs(ScriptMan.GetScripts()) do if tData.sName == sName then found = true if tData.bEnabled then state = true end break end end assert(found,"Скрипт \""..sName.."\" найден не был! Проверьте правильность настройки.") TmrMan.AddTimer(iTime*60000, "StartStop") end function StartStop() if not state then ScriptMan.StartScript(sName) state = true elseif state then ScriptMan.StopScript(sName) state = false end end Проверено, мин нет! © Можешь скрипт назвать родным названием ScriptTimer.lua |
|
|
12.11.2010, 10:32
Сообщение
#4
|
|
Абсолютный новичок Группа: Пользователи Сообщений: 8 Регистрация: 31.3.2010 Пользователь №: 6 536 Спасибо сказали: 1 раз |
Ksan благодарю. Теперь скрипт работающий с полем описания юзера работает как надо
|
|
|
12.11.2010, 12:55
Сообщение
#5
|
|
Белый Волк Группа: Пользователи Сообщений: 1 723 Регистрация: 11.9.2008 Из: г.Томск Пользователь №: 516 Спасибо сказали: 657 раз |
lankmv, хмм, может, тебе следовало сразу сказать, в чём дело и для чего этот скрипт нужен был?
Тогда бы тебе подсказали, как обойтись без дополнительного скрипта. Можно было просто организовать по кратковременному таймеру (500-1000 мс) отправку MyINFO юзерам (если проблема состоит в этом) |
|
|
12.11.2010, 13:49
Сообщение
#6
|
|
Продвинутый участник Группа: Пользователи Сообщений: 155 Регистрация: 11.1.2009 Пользователь №: 1 772 Спасибо сказали: 29 раз |
на малых хабах оно можно, конечно, слать всем или почти всем юзерам что-то очень часто, а вот на больших, думаю, будет просто бесполезное расходование канала доступа в инет..
я к тому, что нужно сначала продумать всю схему работы скрипта, и скрипт этот максимально оптимизировать, вместо добавления внешних костылей (отдельный скрипт для перезапуска нужного, хотя внутри нужного скрипта простенький таймер внедрить можно) |
|
|
12.11.2010, 16:42
Сообщение
#7
|
|
Абсолютный новичок Группа: Пользователи Сообщений: 8 Регистрация: 31.3.2010 Пользователь №: 6 536 Спасибо сказали: 1 раз |
Ksan, я игрался с этой цифрой, при любых значениях, даже больших она не решает проблему, если клиенты начинают часто одновременно заходить на хаб по какой то причине некоторые из них висят со своим полем описания а не с тем который отправляет скрипт - пользователь сети название города / пользователь внешки.
(и скрипт этих пользователей обрабатывает только если его перезапустить / или заставить пользователя перезайти) периодический перезапуск скрипта раз в 1-10 минут оказался единственным вариантом решения моей проблемы. |
|
|
13.11.2010, 3:11
Сообщение
#8
|
|
Освоившийся участник Группа: Пользователи Сообщений: 276 Регистрация: 23.3.2010 Из: РФ Смоленск Пользователь №: 6 429 Спасибо сказали: 60 раз |
это тип крон для хаба?)))
|
|
|
Похожие темы
|
Сейчас: 23.12.2024, 8:11 |