Нужна ли синхронизация для визуального компонента если он создается в рамках потока?

Страдалецъ
Дата: 23.09.2019 01:05:53
Допустим я захочу создать в потоке TMemo, но никак его не отображать и вот нужна ли синхронизация при обращении к методам Memo из потока? По идее, кроме самого потока владельца никто доступ к Memo не получит и вроде как не нужна, но с другой стороны это vcl-компонент и он вполне себе может лезть куда не надо.
rgreat
Дата: 23.09.2019 01:16:15
Невизуальный TMemo, о да!...

+ навеяло...
Картинка с другого сайта.
DmSer
Дата: 23.09.2019 08:08:10
Визуальные компоненты vcl нельзя создавать из других потоков. Как минимум нужен synhronize.
Страдалецъ
Дата: 23.09.2019 08:21:12
Проблема у меня с компонентом TdxRichEditControl, который я хочу вызывать в нескольких потоках и такой вызов:
 Synchronize(procedure begin
             AWordFile := TdxRichEditControl.Create(nil);
             AWordFile.LoadDocument(Value);
             AWordFile.Free;
             end);

ошибок не вызывает, но и потоки при этом теряют смысл. И как-же выкрутится из такой ситуации?
goldmi45
Дата: 23.09.2019 08:36:30
Страдалецъ
И как-же выкрутится из такой ситуации?

Может тогда расскажите о задаче, а не о принятом вами пути решения этой задачи?
wadman
Дата: 23.09.2019 08:47:56
Страдалецъ
ошибок не вызывает, но и потоки при этом теряют смысл.

Да и сам код какой-то бессмысленный: загружается документ и тут же уничтожается.
DarkMaster
Дата: 23.09.2019 09:28:53
wadman
Страдалецъ
ошибок не вызывает, но и потоки при этом теряют смысл.

Да и сам код какой-то бессмысленный: загружается документ и тут же уничтожается.


Зато в потоке :)
X-Cite
Дата: 23.09.2019 10:06:08
Страдалецъ
Допустим я захочу создать в потоке TMemo, но никак его не отображать и вот нужна ли синхронизация при обращении к методам Memo из потока? По идее, кроме самого потока владельца никто доступ к Memo не получит и вроде как не нужна, но с другой стороны это vcl-компонент и он вполне себе может лезть куда не надо.


Компоненты не нужно создавать в потоках... Для какой цели вы собрались это делать?
Страдалецъ
Дата: 23.09.2019 10:11:56
Отнюдь не бессмысленный, просто там нет обработки ошибок. А смысл именно в корректном/некорректном открытии т.к. надо проверить массово битый или не битый документ.
Страдалецъ
Дата: 23.09.2019 10:24:29
Была еще мысль его для поиска замены текста использовать, но в таком варианте не пойдет.