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

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

Thread [D5, Win95/98]


SergeyVP ©   (2001-12-27 06:21:00) 

В хелпе к TThread написанно, что в методе Execute нельзя использовать свойства и методы визуальных объектов.
Я всетаки попробовал (Form1.Caption:= "Test") и ни чего страшного не произошло, а все выполнилось нормально.
Так в чем же дело?


iZEN   (2001-12-27 07:08:00) [1]

/**SergeyVP:
<...>А вообще какие могут быть глюки?<...>
*/

Когда два и более потока (нити, thread-ы) лезут на один VCL-компонент. Так может быть когда основной поток приложения/процесса и другой порождённый поток начнут одновременно устанавливать свойство какого-нибудь компонента, поэтому можно сразу забыть о безглючности этого компонента -- что-нибудь обязательно появится.


SergeyVP   (2001-12-27 06:49:00) [2]

В программе я использую Thread для скачивания файла - процес длительный. По ходу происходит обновление статистики (скорость, сколько закачанно и т.д.). Я попробовал без Synchronize - пять же работает без глюков.
А вообще какие могут быть глюки?


Mbo   (2001-12-27 06:43:00) [3]

иногда проходит без Synchronize, но это может сработать только на таких коротеньких простых действиях, а если операция более длительная, вероятность кирдыка резко повышается.
Да и зачем приключений искать?


Наверх

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