![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADO и потоки: таймаут при выполнении запроса. [D6, MSSQL]
Johnmen © (2005-11-25 11:06:00)Всем привет!
Имеется: АДО коннекшн в главном потоке, открыто; в дополнительном потоке (в Execute) создаётся ещё одно соединение и ADOQuery в рамках этого соединения. В доп.потоке выполняется коннект и запрос. Там же (в Execute) доп.соединение закрывается и разрушается.
В процедуре, кот. выполняется по OnTerminate, делается попытка выполнить запрос в рамках главного соединения.
Явление: указанный запрос не выполняется (Timeout expired).
Вопрос: Где я неправ и что делать?
Спасибо.
Johnmen (2005-11-25 12:51:00) [1]>Nikolay M. © (25.11.05 12:13) [4]
>sniknik © (25.11.05 12:28) [5]
Спасибо за поддержу!
На второй день плотных разборок, дебагга и экспериментов много прояснилось.
А самое главное - поставил МДАК 2.8 и проблема исчезла!!!
Теперь всё нормально!
sniknik (2005-11-25 12:28:00) [2]> Всё скажу словами. :)
не получится.
если секретно, сделай пример с указанным глюком.
вообще описанная схема рабочая, если не считать что я не использую ADOQuery, а использую ADODataSet, и считать все написанное буквально т.е. к примеру что в OnTerminate идет запрос к главному как написано а не к потоковому ошибочно. и т.д
Nikolay M. (2005-11-25 12:13:00) [3]А непосредственно до старта запроса, конекшен в главном потоке открыт? Таймаут у него равен тому же значению, что и до старта потока?
Johnmen (2005-11-25 12:10:00) [4]>sniknik © (25.11.05 11:37) [1]
>код?
Всё скажу словами. :)
>Nikolay M. © (25.11.05 11:53) [2]
Да, этот запрос много раз вып-ся, нормально (до старта потока. А после, когда таймаут, всё уже падает...:)).
Nikolay M. (2005-11-25 11:53:00) [5]
> В процедуре, кот. выполняется по OnTerminate, делается попытка
> выполнить запрос в рамках главного соединения.
> Явление: указанный запрос не выполняется (Timeout expired).
А тот же запрос, но по нажатию кнопки на форме, выполняется нормально? Может все-таки таймаут увеличить?
sniknik (2005-11-25 11:37:00) [6]код?