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

Вниз

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

 
незнайка   (2003-10-29 10:39) [0]

Привет.. есть желание выделить в отдельный поток процесс записи на болванки DVD данных, при этом данные в это время будут готовиться в основной программе... Но.. все функции записи на диск реализованны в основной программе... могу ли я из потока вызывать функции основной программы типа MainForm.WriteToDvd(и т.п.)? Чувствую, что нет, но.... :)


 
TUser ©   (2003-10-29 10:57) [1]

Из потока точно можно писать всякие form1.edit1.text:="текст из потока"; Наверное и с твоей функцией проблем не будет.


 
panov ©   (2003-10-29 11:52) [2]

Нет, не можешь.
Это будет не потокобезопасная операция.


 
Digitman ©   (2003-10-29 12:02) [3]


> незнайка


> могу ли я из потока вызывать функции основной программы
> типа MainForm.WriteToDvd


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



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
1-41245
Delphian
2003-11-04 18:01
2003.11.13
Не могу создать объект класса TFileStream в конструкторе класса


14-42092
ДедушкаКо
2003-10-23 10:12
2003.11.13
IRC ? Что это за зверь?


4-42281
BorH
2003-09-11 03:04
2003.11.13
Создание ярлыка


1-41481
zapped
2003-10-28 15:29
2003.11.13
Service debugging


14-42135
Style
2003-10-22 11:35
2003.11.13
---|Ветка была без названия|---