Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Alex369
Зарегистрирован: 01.08.2003 Сообщения: 7
|
Добавлено: Ср Авг 13 2003 11:37 Заголовок сообщения: Использование new в нитях |
|
|
Для ускорения работы формы пришлось создать поток(нить) которая создает дочерние объекты в объекте главного окна с помощью команды new. Без использования нити этот процесс протекал идеально. Но при создании объектов из нити дочерние объекты не создавались, а попытки обращения к ним присекались компилятором. Такое впечатление что создаются объекты в области памяти нити и дочерние объекты не могут долезть по своим адрессам. Кто встречался с такой ситуациеей посоветуйте чего-то? |
|
Вернуться к началу |
|
|
Vladgul Гость
|
Добавлено: Чт Авг 14 2003 07:48 Заголовок сообщения: Re: Использование new в нитях |
|
|
Если я правильно понял, то ты создаешь дополнительные потоки (Thread), а затем в них пытаешься что-то создать, что должно отображаться в основном потоке программы. Если это так, то при использовании потоков нужно стараться избегать пересечения с визуальными элементами(ИМХО это должно работать быстрее), если это невозможно, то нужно делать отдельные процедурки(без параметров) в потоке, которые будут осуществлять изменение свойств визуальных объектов, а затем вызывать их через Syncronize(ТВОЯПРОЦЕДУРА); |
|
Вернуться к началу |
|
|
Alex369
Зарегистрирован: 01.08.2003 Сообщения: 7
|
Добавлено: Чт Авг 14 2003 15:44 Заголовок сообщения: Re: Использование new в нитях |
|
|
Спасибо брат! Уже разобрался и хочешь совет если использовать Syncronize и создается довольно много объектов с VCL то прироста производительности нет, круче алгоритм переделать, что и было сделано. И вообще разачорование с VCL полное. |
|
Вернуться к началу |
|
|
|