Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.08;
Скачать: CL | DM;

Вниз

Вопрос по скорости работы запроса   Найти похожие ветки 

 
Sapsi   (2003-04-18 08:56) [0]

Добрый день
Вопрос, думаю, простейший для любителей потоков.
Выполняется СКЛ. ОБычно, например, время выполнения - 10 секунд.
Как наилучшим образом отследить, что он выполняется дольше, обрубить связь, отменить выполнение и т.п.
Таймер в основном потоке, а запрос в другом?
Подскажите, плиз.


 
Sergey13 ©   (2003-04-18 09:21) [1]

2Sapsi (18.04.03 08:56)
>Как наилучшим образом отследить, что он выполняется дольше, обрубить связь, отменить выполнение и т.п.
Странный подход к решению проблемы. 8-(


 
NAlexey ©   (2003-04-18 09:26) [2]

Если ADO то не надо ничего следить, CommandTimeout выставляй сколько надо. Если нет то не подскажу.


 
Sapsi   (2003-04-18 10:16) [3]

2 Sergey13 что значит странный подход.
Если не проходит выполнение запроса, то его надо будет сделать позже


 
Mike Kouzmine ©   (2003-04-18 10:19) [4]

А что значит не проходит?


 
Sapsi   (2003-04-18 10:25) [5]

значит база находится не в моем ведении, у меня лишь хранимая процедура, которая обращается к ней, коннект к базе есть,
но из-за "провисания" сетки либо из-за каких-либо работ на базе ее админами, у меня (точнее без меня у оператора) происходит замедление работы, иногда до 5-10 минут. В то же время выполнить эту процедуру можно позже.
Вот я и хочу узнать, что СКЛ (конкретно СЕЛЕКТ) выполняется больше 10-20 секунд и отменить его выполнение.
Вопрос вообще был, как это лучше сделать.


 
Sergey13 ©   (2003-04-18 10:29) [6]

2Sapsi (18.04.03 10:16)
>Если не проходит выполнение запроса,
А с чего ты решил что он "не проходит"? Может, когда ты мерял свои 10 секунд, ты был в базе один, а сейчас работает 10 человек. Может кто-то по сети кино качает, и ты просто не можешь свои данные получить из за этого. Может просто объем данных вырос и теперь этот запрос выполняется 10.1 секунды. Да мало ли причин. А тут просто - бац и отрубил.
И потом. 10 секунд для запроса - это многовато. Тут или запрос сложный и объемный. И в этом случае надо приложить иногда немалые усилия что бы его настроить. Или просто оптимизацией никто никогда не занимался, индексы например не построены.

>то его надо будет сделать позже
Когда позже? Через 11 секунд после начала первой попытки? Вот так сервера и вешают, ИМХО.


 
Sergey13 ©   (2003-04-18 10:41) [7]

2Sapsi (18.04.03 10:25)
Сори, мои вопросы запостились позднее ответов. 8-)
Многое стало понятно. Извини.

Тогда твой вопрос, имхо, не имеет решения. По моему с клиента убить самого себя не получится, да еще и не с админскими правами. Разве что отконектиться.


 
Sapsi   (2003-04-18 11:06) [8]

вот отконнектиться можно будет, но вопрос не в этом, а в том, как выполнить запрос в другом потоке и проверить результат его работы


 
Sapsi   (2003-04-18 11:41) [9]

кто работал с скл запросами в отдельном потоке?


 
sniknik ©   (2003-04-18 12:02) [10]

Sapsi (18.04.03 11:41)
интересный вопрос. тебе к какому дню список продоставить? :о))

лутше бы вопрос прояснил, хотя бы почему решение NAlexey © (18.04.03 09:26) не подходит? ведь действительно делать то специально ничего не надо.


 
Sapsi   (2003-04-18 13:27) [11]

Спасибо всем, уже сделал сам



Страницы: 1 вся ветка

Текущий архив: 2003.05.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.021 c
6-23259
Alta
2003-03-13 09:54
2003.05.08
програмка для локальной сети


1-23216
Viktor1
2003-04-25 10:08
2003.05.08
Код не работает! В чём проблеа не пойму. На форме ничего нет.


1-23183
Rem100
2003-04-24 18:36
2003.05.08
TImage не присваивается иконка приложения


3-23038
SerGa
2003-04-18 01:19
2003.05.08
DBIERR_LOCKFILELIMIT - Что это?


1-23165
_DarkSide
2003-04-24 14:56
2003.05.08
Помогите с OpenDialog