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

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

можно всю форму создать и обслуживать в потоке ? [D5]


oleggar ©   (2006-06-16 16:10:00) 

Есть такая проблема .В приложении есть дочерняя форма ,в ее классе есть несколько процедур ,работающие с базой данных и перерисовывающие форму.Если в процедуре выполняется долгий запрос ,форма не двигается (ни эта ,ни главная).Создать поток тяжело (очень много взаимосвязей между процедурами) .Можно сделать так ,чтоб все процедуры класса выполнялись в отдельно потоке ?или хотя бы сделать так,чтоб основной класс работал ,если зациклилась дочерняя форма ,я же ее даже уничтожить не могу тогда.


Юрий Зотов   (2006-06-17 02:45:00) [1]

Визуальные компоненты Delphi (в том числе, и формы) спроектированы для работы в главном потоке (см., например, справку по Synchronize). Поэтому проще сделать наоборот - в отдельном потоке выполняйте запрос, а код формы оставьте в главном.


Пусик   (2006-06-17 02:27:00) [2]

> можно всю форму создать и обслуживать в потоке ?


Всю форму - нет.


> Можно сделать так ,чтоб все процедуры класса выполнялись
> в отдельно потоке ?или хотя бы сделать так,чтоб основной
> класс работал ,если зациклилась дочерняя форма ,я же ее
> даже уничтожить не могу тогда.


В твоем случае все зависит от твоей конкретной задачи.


Наверх

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