IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> TThread, Synchronize, VCL
sheka
сообщение 15.12.2011 18:44
Сообщение #1


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


Synchronize делает неактивным приложение, в то время как без него работает. Какие есть варианты решения этой проблемы? В form1.proc есть работа с VCL.
Код (Показать/Скрыть)

Где можно найти нормальное описание Synchronize?

Сообщение отредактировано: sheka - 15.12.2011 18:48
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
IUnknown
сообщение 15.12.2011 19:45
Сообщение #2


a.k.a. volvo877
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской

Репутация: -  627  +


Цитата(sheka @ 15.12.2011 17:44) *
Synchronize делает неактивным приложение, в то время как без него работает.
А на кой тебе там вообще Synchronize? Тебе что, надо выполнять какие-то действия в контексте основного потока приложения? Нет, не надо (вот когда на форме будут обновляемые из потока контролы - тогда надо будет).

Цитата
form1.proc есть работа с VCL.
Значит, обновление VCL-контролов (то что тебя сейчас есть - это не называется "работа с VCL", это можно делать и без синхронизации) выдели в отдельную процедуру, и вызывай ее через Synchronize. Чтоб она работала как можно быстрее. Зашла - обновила - вышла.

Цитата(sheka @ 15.12.2011 17:44) *
Где можно найти нормальное описание Synchronize?
Для начала - тебе сюда: Выучить наизусть, только потом работать с потоками

(что-то сегодня я уже второй раз даю эту ссылку, все прямо так заинтересовались потоками... smile.gif )

Сообщение отредактировано: IUnknown - 15.12.2011 19:48
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 14.09.2025 2:46
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"