Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Выполнение Query+кода в отдельном потоке [D6, Paradox]


Vovan ©   (2003-09-04 17:30:00) 

У меня возникла необходимость выполнить в отдельном потоке запрос и по результатам этого запроса в том же потоке заполнить MemoryTable (из набора утилит Rx). Запрос в потоке выполняется:

Query.Open;

,но далее код типа:

while not Query.Eof do begin
//заполнение MemoryTable
end;

...выполнять отказывается.

Как заставить поток отрабатывать до тех пор, пока не будет выполнен весь код до конца?


Vovan   (2003-09-04 18:08:00) [1]

Огромное спасибо sniknik !!! Это как раз ТО оказалось:)

2MsGuns: текст запроса
Select NPol from Blank
и все:)


Nikolay M.   (2003-09-04 18:02:00) [2]


> почему в потоке после открытия запроса (с текстом Select...
> например) далее ни одна команда не выполняется?

Хз :)
Посмотри в екзамплах BkQuery - там все выполняется.


Vlad   (2003-09-04 18:01:00) [3]

Приведи код, как ты с потоком работаешь ?


MsGuns   (2003-09-04 18:00:00) [4]

А сам запрос корректный ? Запусти его в эксплорере для поверки


sniknik   (2003-09-04 18:00:00) [5]

наверное потому, что Query у тебя в основном потоке обьявлен.


Vovan   (2003-09-04 17:57:00) [6]

Нет, молчит:) Но MemoryTable остается пустой. Т.е., если для контроля поставить после
Query.Open
ShowMessage("Буду выполнять код");

то такого сообщения не дождетесь :)

Т.о. вопрос могу сформулировать иначе: почему в потоке после открытия запроса (с текстом Select... например) далее ни одна команда не выполняется?


Nikolay M.   (2003-09-04 17:36:00) [7]


> ...выполнять отказывается

Это как? Говорит "Не буду выполнять код!"?


Наверх

Титульная страница Поиск, карта сайта Написать письмо