Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.07.2003, 12:19
|
|||
|---|---|---|---|
|
|||
Может что подскажите |
|||
|
#18+
Может что подскажите. Проблема вроде не сложная. По кнопке запускается таймер в котором обрабатывается ряд довольно сложных sql-запросов с минимальным интервалом. Теоретически есть кнопка которая останавливает выполнение этих запросов, выставляя timer.enabled:=false, но практически висят часы и кликнуть на эту кнопку не удается. Риторический вопрос - что делать? Если можно использовать потоки, то как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 12:20
|
|||
|---|---|---|---|
Может что подскажите |
|||
|
#18+
Application.ProcessMessages? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 12:24
|
|||
|---|---|---|---|
Может что подскажите |
|||
|
#18+
не поможет. раз запущенна процедура таймер проверять не станет свойство enabled покуда не отработает событие. нужно самому, промеж скл запросов делать(конечно-же) application.processmessages; if (not timer.enabled) then exit; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 12:36
|
|||
|---|---|---|---|
|
|||
Может что подскажите |
|||
|
#18+
Спасибо, но Application.ProcessMessages не помогает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 12:38
|
|||
|---|---|---|---|
Может что подскажите |
|||
|
#18+
Вообще говоря, он помогает да только не сильно. сделай отдельный поток. и убивай его по требованию пользователя. с целостностью данных сам разбирайся. хотя если это только чтение, то пофигу, конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 18:33
|
|||
|---|---|---|---|
|
|||
Может что подскажите |
|||
|
#18+
2alex_k: Дополнительный поток сделал, но кнопку могу нажать только если опять-таки вставляю Application.ProcessMessages и то не всегда, может для потока нужно специально выставлять низкий приоритет или еще что-то... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 18:59
|
|||
|---|---|---|---|
Может что подскажите |
|||
|
#18+
Могу вот что сказать. Имею дело с системой стоимостью за 250 000 $$$. Так вот, там хоть клиентская часть и не на Дельфи (Oracle Forms, если тебе это о чём то говорит), твоя проблема решена следующим образом. Чтобы не зависала клиентская часть, долгие запросы выполнены в виде jobs. Это серверные хранимые процедуры, которые запускаются как пакетные задания сразу после нажатия клиентом кнопки. НО!!! Они запускаются на сервере и на клиент передают только % сколько выполнились. Т.е. зависания никакого, всегда можно прерваться (если конечно серверная часть умеет обрабатывать соответсвующее исключение/нажатие кнопки). P.S. Есть ли в твоей базе понятие хранимые процедуры и джобы - не знаю. У меня везде Оракл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 19:08
|
|||
|---|---|---|---|
|
|||
Может что подскажите |
|||
|
#18+
Сам думал сделать хранимую, но там придется много переносить... Думал как проще. Потом запросы в потоке частично сами по себе хранимые, вызывающие другие хранимые. Могут наверно возникнуть сложности с вложенностью (база MSSQL Server 2000). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.07.2003, 20:20
|
|||
|---|---|---|---|
Может что подскажите |
|||
|
#18+
а операционка какая? все пучком должно быть с потоками. твои селекты всеравно ведь сервером обрабатываются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&mobile=1&tid=2117674]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 390ms |

| 0 / 0 |
