|
|
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
Не знаю как по-другому сформулировать... Есть набор химических операций (экспериментов), у каждой операции, условно говоря, есть дата начала операции и дата завершения операции. И вот нужно после того, как подошло время завершения химической операции сделать определенные действия. То есть условно говоря есть набор Код: java 1. . Нужно после того как химическая операция завершается сделать определенное действие. Напрашивается решение "в лоб", - каждую минуту пробегать весь список и сравнивать текущее время с датой завершения операции. И если дата завершения календарно позже текущего времени, то выполняем действия, которые нужно делать по завершению операции. Но вот как-то видится это сильно неоптимальным. Хочется наверно в идеале, что бы каждая операция или какая-то обертка вокруг нее сама следила бы за временем. Но тут тогда будет много потоков, и вот, это наверно, тоже зло. Машинка 2х ядерная. Если кто-то сталкивался с похожими задачами (отслеживание даты завершения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2012, 06:35:16 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
Попробуй внятно сформулировать задачу. Потому что сейчас за деревьями леса не видно. "операция" это что-то в рантайме? Тогда можно сделать обертку, которая по завершению поставит событие в очередь. Либо это просто данные (значение времени), тогда нужно взять таймер и просто заскедулить в нем все нужные точки временной шкалы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2012, 11:17:01 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Ну вот лаборант заполнил формочку: ---------- дата начала отслеживания операции: dd-mm-yyyy ---------- дата окончания отслеживания операции: dd-mm-yyyy ---------- /* ... другие поля ... */ ---------- Нажимает "Сохранить". В базу заносится запись что вот мол, создан такой объект. Нужно теперь отследить, что пришло время даты окончания отслеживания операции. Вот. Понимаете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2012, 18:02:47 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
Теперь не понимаю что за "обертка" была предложена в первом вопросе. А так нужен любой scheduler, который умеет сохранять состояние и запускаться. Quartz, по идее, надо смотреть: http://quartz-scheduler.org/ Либо на уровне операционной системы скедулить задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2012, 18:10:59 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
BlazkowiczЛибо .... http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Timer.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2012, 20:49:28 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
pasha701BlazkowiczЛибо .... http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Timer.html Многопоточность? JEE интеграция? Перезагрузка сервера? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2012, 23:21:51 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Операций может быть достаточно много: порядка 1000, это нормально, что будет 1000 таймеров? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2012, 09:20:54 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
scymaksОпераций может быть достаточно много: порядка 1000, это нормально, что будет 1000 таймеров? Зависит от того о каком "таймере" речь. Ну, и 1000 это не много. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2012, 13:02:19 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
на серверах-субд делают один таймер\шедулер, который с определённой периодичностью просто обходит все записи по select\списку объектов. Т.е. один таймер может обслуживать список объектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2012, 13:33:27 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
BlazkowiczМногопоточность? JEE интеграция? Перезагрузка сервера?Таких терминов нет в вопросе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 12:46:15 |
|
||
|
отслеживание даты завершения
|
|||
|---|---|---|---|
|
#18+
дискретность опросам - раз в день? в час? минуту? раз работа с базой все решается просто. сортируешь в базе все времена окончания по возрастанию, берешь первое (т.е. ближайший наступлению окончания ) и проверяешь с текушим временем. если таковых несколько - дополнительная проверка на вкус. достаточно 1 таймера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 13:03:01 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=261&tid=2130640]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 284ms |
| total: | 422ms |

| 0 / 0 |
