Strona 1 z 1

[BCB C++] TThread tworzenie nowych watkow wExecute

Nowy postNapisane: piątek, 7 września 2012, 19:53
przez Darek_C++
W programie głównym tworzone były by wątki w których w metodzie Execute() następne.
KOD cpp:     UKRYJ  
void __fastcall WatekPierwszegoPoziomu::Execute()
{
        // pobrane dane niezbedne do watkow parent  //
        for (; jakis warunek ; )
        {
                // utworzenie 5ciu watkow
                DoWatekParent= new WatekParent(true);
                DoWatekParent->OnTerminate = MyOnTerminate;
                DoWatekParent->Resume();
                this->ileWatkow++
        }

        // kiedy nastapi wyjacue z zakresu
}

void __fastcall WatekPierwszegoPoziomu::MyOnTerminate(TObject *Sender)
{
        this->ileWatkow --;
}
Ale jak uzyskać informacje w WatekPierwszegoPoziomu, że utworzone w nim watki DoWatekParent zakończyły swoje działanie czyli jak poczekać do wyjąca z WatekPierwszegoPoziomu::Execute na wykonanie się tych dodatkowych watków. Bo jak sądze po iteracji przez petle utworzą się doatkowe wątki i nastąpi wyjście z zakresu i metody Execute i zakończenie watku głównego :)

Re: [BCB C++] TThread tworzenie nowych watkow wExecute

Nowy postNapisane: sobota, 8 września 2012, 09:48
przez polymorphism
Wrzuć wątki do jakiejś listy i testuj je metodą WaitFor.