Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: 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 вся ветка

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

Наверх




Память: 0.49 MB
Время: 0.025 c
1-1084720838
DIS
2004-05-16 19:20
2004.05.30
путь к файлу.


14-1084128355
VID
2004-05-09 22:45
2004.05.30
Как узнать в какой папке лежат файлы...


11-1073511541
reagent
2004-01-08 00:39
2004.05.30
Глюки ICS


1-1084806749
glGLU
2004-05-17 19:12
2004.05.30
ListBox


1-1085043800
finger
2004-05-20 13:03
2004.05.30
Динамическая работа с компнентами