Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
ThreadPoolManager и задержка
#1
Здравствуйте.

Никак не могу понять, как правильно использовать TPM в случаях когда нужно реализовать задержку между действиями, или выполнения методов.

Написал что то вроде:

Код:
String s = Config.MY_EVENT_DELAYONBOOT;
long delay = Long.parseLong(s)*60000;
ThreadPoolManager.getInstance().scheduleGeneral(MyNewEvent.getInstance(), delay);
Calendar cal = Calendar.getInstance();
cal.add(Calendar.MINUTE, (int)delay/60000);
_log.info("Event loaded at" + String.format("%tT",cal));

И это находится в GameServer.java

Подскажите как это написать правильно, что бы не было ошибок связанных с Runnable (в этом классе я не могу прописать implements Runnable)

Spasibo!!
Ответ
#2
Код:
ThreadPoolManager.getInstance().scheduleGeneral(new Runnable() {
@Override public void run() {
  MyNewEvent.getInstance();
}, delay);
Лямбда не?

~~~~~~~~~~~~~~~~~~~~
А вообще юзайте лучше событийную архитектуру, она удобнее ^W^W^W Если конечно сможете такую реализовать. Как пример, можно посмотреть в сторону дот нетов.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#3
Хм, тогда почему данный код отказывается работать по задержке??
Ничерта что то не могу понять...

Код:
            if(Config.EVENT_SPAWNS)
            {
                String s = String.valueOf(Config.EVENT_SPAWNS_VAL);
                long delay = Long.parseLong(s)*60000;
                Calendar cal = Calendar.getInstance();
                cal.add(Calendar.MINUTE, (int)delay/60000);
                _log.info("Event spawn at " + String.format("%tT",cal));
                
                ThreadPoolManager.getInstance().scheduleGeneral(new Runnable()
                {
                    public void run()
                    {
                        EventSpawns.getInstance();
                    }
                }, delay);
            }
            else
            {
                EventSpawns.getInstance();
            }
Ответ
#4
Попробуйте использовать другую щеколду, возможно эта переполнена.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#5
Цитата:Попробуйте использовать другую щеколду, возможно эта переполнена.
Какую? Подскажите пожалуйста
Ответ
#6
Быть может метод
[src=java]
EventSpawns.getInstance()
[/src]
вызывается ранее в другом месте?
Ответ
#7
Ro_0TT Написал:Быть может метод
[src=java]
EventSpawns.getInstance()
[/src]
вызывается ранее в другом месте?

В том то и дело, что нет =\
Ответ
#8
[src=java]if (Config.EVENT_SPAWNS) {
long delayMs = TimeUnit.MINUTES.toMillis(Config.EVENT_SPAWNS_VAL);
long timestamp = delayMs + System.currentTimeMillis();
_log.info("Event spawn at " + String.format("%s", new Date(timestamp)));

ThreadPoolManager.getInstance().scheduleGeneral(new Runnable() {
public void run() {
EventSpawns.getInstance();
}
}, delayMs);
}[/src]

Значение Config.EVENT_SPAWNS_VAL - у вас должно быть int минут
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Community Board задержка mego4el 6 1,655 12-01-2015, 07:19 PM
Последний пост: Zubastic
  Задержка в КБ slayer48 14 3,262 01-11-2015, 04:45 PM
Последний пост: Donatte
  Задержка крит урона петов\самоннов Influence 14 2,658 10-30-2014, 08:03 AM
Последний пост: Melcor
  Сесть- встать. задержка действий Rolfer 7 2,172 01-22-2014, 08:35 PM
Последний пост: WoWan-SM
  простая задержка (java) doDie 31 13,501 08-15-2012, 03:15 PM
Последний пост: doDie
  Задержка Атаки Klinz 4 1,784 04-06-2012, 04:33 PM
Последний пост: NotSpecified
  Задержка при покупке BAKSы 4 1,972 01-09-2011, 02:10 PM
Последний пост: malder
  Задержка на итемы JaneKyun 2 1,983 07-24-2010, 11:42 AM
Последний пост: JaneKyun
  Задержка скилов UFODriverr 9 4,552 04-29-2010, 07:17 AM
Последний пост: VoltVolt
  Непонятная задержка на Windows VAAN 1 2,505 03-29-2010, 11:37 AM
Последний пост: Дух системы

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)