Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 02:13 20.04.24 
Клубове/ Компютри и Интернет / Delphi Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема actions, threads, chain-of-actions
Авторtikva (Нерегистриран) 
Публикувано15.06.07 14:18  



Някой ако може да даде идея ще е супер.

======== целта: ===============
1) имам един timer, който периодично искам да извиква един "chain-of-actions" -
т.е. няколко TAction-a, които искам да се изпълнят последователно. Всеки от тези actions се обръща към един singleton (core) и му казва да прави нешо. този клас извършва някакво действие.

2) Във всеки един момент user-a може да запали някои от други 2 actions, които не са част от тази верига.
Когато това се случи искам:
- веригата да се "прекъсне" - т.е. като се изпълни поредния action да не се извика следващия.
- да се изпълни този "user" action
- да се пусне веригата отначало.

======= (опит за) реализация: ==========
1) Действията, които извършва cora са доста времеемки. затова съм ги направил в отделен thread. Като приключи действието се пали event - и всъщност този event показва, че дадения action е приключил и се стартира следващия от веригата (ако има).

2) При стартиране на веригата правя enabled := false на timera, за да не се окаже, че ще "светне" пак преди да е завършила веригата. в края правя enabled := true

всичко си изглежда ок, докато се намеси user-a :) малко се омотват нещата.

========== въпросчета: ============
- някой правил ли е нещо подобно и може ли да даде съвети ?
- по принцип onExecute() на даден action пали ли друг thread или се изпълнява в main-threada ?
- какво става ако се изпълнява даден код в main-threada и докато се изпълнява се пали някакъв друг action ?

a1.execute()
................... <=================== user action
a1.finishEvent() =
|
a2.execute() <=
....
a2.finishEvent()
..
..
..



Цялата тема
ТемаАвторПубликувано
* actions, threads, chain-of-actions tikva   15.06.07 14:18
. * P.S: actions, threads, chain-of-actions tikva   15.06.07 16:28
. * По време на дълги процеси NikB   16.06.07 18:50
. * Става пожар nop   16.06.07 19:27
. * Re: Става пожар tikva   18.06.07 11:13
. * Re: actions, threads, chain-of-actions tikva   22.06.07 14:49
. * Re: actions, threads, chain-of-actions Formal   26.06.07 10:20
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.