Вниз
Скачать: CL | DM;

Использование Thread при обновлении состояния Action ов   Найти похожие ветки 

← →
Tamagoci   (2004-05-13 15:25) [0]

Здравствуйте, Мастера.

Проблемы на основном форуме - задам вопрос здесь.

Наверное, все видели в Word такую штуку: к примеру, когда текст выделен кнопка "Копировать" включена, когда не выделен - нет. Хочу сделать нечто подобное в своей программе - т.е в зависимости от некоего условия какой-либо action принимает соответствующее состояние (включен/выключен). Сначала пробовал вешать это на определенные события, но при этом резко упала производительость. Пришла мысль - использовать для обновления состояние Thread. Сделал, протестировал - работает. А вопрос вот в чем - имеет ли смысл/правильно/можно ли использовать для подобных целей Thread? Заранее благодарен.


← →
Digitman ©   (2004-05-13 16:05) [1]


> Сначала пробовал вешать это на определенные события, но при этом резко упала производительость
> Пришла мысль - использовать для обновления состояние Thread


с каких это пор использование доп.код.потоков повышает производительность ? на чем основана сия гениальная мысль ?


← →
Тимохов ©   (2004-05-13 16:08) [2]

Работает?
Ну-ну.
Долго ли это будет продолжаться.

Если падает производительность (да еще и резко) при обновлении в OnUpdate, значит там алгоритмическая ошибка.


← →
Игорь Шевченко ©   (2004-05-13 16:20) [3]


> Наверное, все видели в Word такую штуку: к примеру, когда
> текст выделен кнопка "Копировать" включена, когда не выделен
> - нет. Хочу сделать нечто подобное в своей программе - т.е
> в зависимости от некоего условия какой-либо action принимает
> соответствующее состояние (включен/выключен).


TAction.OnUpdate решит эту проблему, так как вызывается в Application.Idle, соотвественно, производительность не падает.


← →
Tamagoci   (2004-05-13 16:30) [4]

2 Digitman ©   (13.05.04 16:05) [1]
> на чем основана сия гениальная мысль ?

На пустом месте. Потому и вопрос задал - сам ответа не знаю.

2 Тимохов ©   (13.05.04 16:08) [2]
2 Игорь Шевченко ©   (13.05.04 16:20) [3]

Огромное спасибо.


← →
Тимохов ©   (2004-05-13 16:35) [5]


> Tamagoci   (13.05.04 16:30) [4]

И за что нам спасибо?
Вы же сами сказали, что
> Сначала пробовал вешать это на определенные события

значит вы про OnUpdate знали...
Или вы как-то по-другому делали?


← →
Digitman ©   (2004-05-13 16:35) [6]


> Tamagoci   (13.05.04 16:30) [4]


использование доп.трэдов позволяет распараллелить длительные вычисления .. и не более того


← →
Tamagoci   (2004-05-13 16:41) [7]

2 Тимохов ©   (13.05.04 16:35) [5]
> И за что нам спасибо?

За ответ.

> Вы же сами сказали, что
>> Сначала пробовал вешать это на определенные события
> значит вы про OnUpdate знали...

Стыдно. Не знал. Ранее не сталкивался с подобной задачей - начинающий.

> Или вы как-то по-другому делали?

Да, по-другому. Описывать не буду - понимаю что мой старый способ аналогичен чесанию левого уха правой рукой через голову.

2 Digitman ©   (13.05.04 16:35) [6]

Спасибо за объяснение.


← →
Cobalt ©   (2004-05-13 22:42) [8]

> чесанию левого уха правой рукой через голову.
Кстати  - очень удобно! :)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.024 c
8-1079682681
Keiptaun
2004-03-19 10:51
2004.05.30
Pererisovka Formy


7-1083439078
Dimaxx
2004-05-01 23:17
2004.05.30
Регистрация кодека в системе


1-1084535167
WebErr
2004-05-14 15:46
2004.05.30
Create (override?)


6-1081799593
DED_MustDie
2004-04-12 23:53
2004.05.30
non-blocking


1-1084558995
ИМХО
2004-05-14 22:23
2004.05.30
OLE-автоматизация Outlook а




   Наверх