Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.26;
Скачать: CL | DM;

Вниз

потоки   Найти похожие ветки 

 
Jedi K   (2003-06-10 11:17) [0]

безопасно обращатся к другим обьектам из конструктора обьекта?


 
Jedi K   (2003-06-10 11:18) [1]

сорри:
безопасно обращатся к другим обьектам из конструктора потока - потомок TThread?



 
Palladin ©   (2003-06-10 11:21) [2]

если обращаешься до вызова inherited create то безопасно, если после то опасно


 
Jedi K   (2003-06-10 11:24) [3]

Palladin © (10.06.03 11:21):
thanks


 
Digitman ©   (2003-06-10 11:24) [4]

Тело метода-конструктора TThread исполняется в том код.потоке, который вызывал этот метод. И совершенно неважно, чей это "потомок" - TThread или TObject или еще чей-то...
Гораздо важней - безопасно ли обращение к объектам того код.потока, который вызвал метод-контруктор класса, в теле которого происходит обращение к неким объектам


 
Palladin ©   (2003-06-10 11:29) [5]

опасно лишь по той причине что поток уже запущен и из execute может идти обращение к полям класса-наследника которые еще не проинициализированы... я так понимаю обращение к объектам, автору поста, необходимо для инициализации полей класса...
но если это не так, то прошу прощенья конечно...


 
Jedi K   (2003-06-10 11:37) [6]

Digitman © (10.06.03 11:24):

поток создоется в контексте основного и в его конструкторе нужно прочитать значения скажем несклько едитов. Я делаю это с помощью параметров в конструкторе но так как приходится писать их часто хочется прочитать сразу в конструкторе - меньньше кода будет, и не знал точно где выполняется конструктор потока.

Я все правильно понял что я могу это делать в моем случае ?
спасибо.


 
Digitman ©   (2003-06-10 11:56) [7]

если конструктор TThread вызван в осн.код.потоке, то обращение в его теле (где бы то ни было) к VCL-объектам, ссылки на которые (в том или ином виде) переданы факт.параметрами констр.метода, с т.з. threadsafe совершенно безопасно. Равносильно тому, как если бы код обращения к этим объектам был вынесен за пределы конструктора в тело вызывающей конструктор процедуры-ф-ции.
Единственное, на что следует обратить внимание - объекты, к которым происходит обращение, должны реально существовать на момент обращения.


 
Jedi K   (2003-06-10 12:01) [8]

Digitman © (10.06.03 11:56):
понял, еще раз спасибо, в литературе не нашел нешел обсуждение таких моментов, а может просто плохо искал :).



Страницы: 1 вся ветка

Текущий архив: 2003.06.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.041 c
9-83845
K.o.Z
2003-01-11 23:41
2003.06.26
Вопрос по теме: Ландшафт


4-84845
Xeon
2003-04-26 08:15
2003.06.26
Работа с реестром


1-84255
Muskat
2003-06-10 12:25
2003.06.26
dll – string…


14-84596
LiLa Ananda
2003-06-08 11:26
2003.06.26
Perl-проблем


1-84324
Frack
2003-06-16 08:20
2003.06.26
Вложенные каталоги