Дмитрий |
Отправлено: 10.01.2004, 22:03 |
|
Не зарегистрирован
|
Подскажите, как в Builder'e имея допустим 2, 3, или более функций, работающих с однотипными компонентами (например Label или PaintBox), и проделывающих с ними ПОЧТИ одинаковые изменения, запустить их всех сразу? Чтобы эти изменения происходили параллельно.
Спасибо. |
|
Георгий |
Отправлено: 11.01.2004, 12:11 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
если не рассматривать экстримальные методы работы, то остаются всего 2 способа, но гарантированно работающие:
1 — потоки изменяют содержимое компонентов в методе TThread::Synchronize
2 — потоки изменяют значения глобальных переменных (int, AnsiString и т.п.), при необходимости можно использовать объекты синхронизации (например TMultiReadWriteExclusiveSynchronizer), а обновление значений экранных компонентов выполнять по таймеру.
при этом я делал предположение, что функции которые должны работать параллельно были оформлены как потоки (TThread) |
|
|