Wątki - tworzenie innych wątków poprzez wątek

0

Witam ;-)
Mam następujące pytanie. Czy da się uruchomić kilka innych wątków pracujących w tym samym czasie poprzez inny wątek??
Chodzi o to że mam uruchomiony główny wątek, a w nim znajduje sie pętla tworząca inny wątek. Chciałbym, aby za każdym razem gdy pętla się wykona Tworzył się osobny wątek. Jeśli tworzęw ten sposób wątki to muszę czekać aż się wykonają wszystkie pętle w wątku pobocznym a dopiero potem przechodzi do następnego wątku :-/
Czy istnieje możliwość aby wątki tworzone z innego wątku uruchamiały się jednocześnie i pracowały w tym samym czasie?
Za odpowiedź serdecznie dziękuję ;-)

Ps. Szukałem, ale nie znalazłem satysfakcjonującej odpowiedzi ;-(

0

Czy da się uruchomić kilka innych wątków pracujących w tym samym czasie poprzez inny wątek??
Tak, możesz je uruchomić tak samo jak z wątku głównego.

Czy istnieje możliwość aby wątki tworzone z innego wątku uruchamiały się jednocześnie i pracowały w tym samym czasie?
Tak i nie, tzn. generalnie tak, z tym że na poziomie milisekund nie, zawsze działa jeden wątek i tylko się zmienia z innymi, tak samo nigdy nie wystartują idealnie razem.

A tak w ogóle nie szalej tak z tworzeniem wątków. Tak naprawde zawsze jeśli można obejść się bez wątków to się ich nie stosuje, chyba że ewidentnie widać, że się przydadzą. Opisz jaki masz problem dokładniej ?</url>

0

Dzięki za odpowiedź ;-)
Co do równoczesnego wykonywania to wiem, że procesor jednordzeniowy nie moży wykonywać w tym samym czasie kiklu operacji. Chodzi mi mniej więcej o to, żeby wykonywało się ok. 1000 wątków w tym "samym" czasie. Wątki by się wykonywały do czasu aż jedna zmienna mała by wartość true. Wtedy nastąpił by ich koniec.
Chodzi o to, że mam komponent. Ma on sięłączyć co jakiś czas z netem. Potwierdzenie logowania trwa jakieś 3-4 sek. Chce zrobić po prostu, że kilka wątków jednocześnie logowało by się w "tym samym czasie" i czekało na dalsze instrukcje.
Mam nadzieję, że dobrze wytłumaczyłeml9 ;-)
Dzięki i pozdrawiam ;-)

0

Jeszcze lepiej gdyby się dało stworzyć kopię komponentu. Potem zmnieniać tylko jego właściwości odnośnie serwewa, I czy była by możliwośc zrobienia dowolnej liczby kopi komponentu.. potem jego oprogramowanie zdarzeń no i usunięcie komponentu. Mam właśnie problem z odwoływaniem się się do dynamicznie stworzenego komponentu. Oto co robię:

var
  komponent: TComponent;
begin
  komponent:= TComponent.Create(Form1);

No i moje pytanie...
jak się odwołać to tak stworzonego komponentu? Nie chodzi mi o jednorazowe odwołanie, tylko chcce sie odwoływać i zmieniać poarametry tego komponentu w innych procedurach.
Jeśli ktoś by umiał takie cośzrobić to mógłbym prosił o kod?
Z góry więlkie dzięki ;-)

0

ok.. temat do kasacji :-D
już sobie poradziłem :-)
utworzyłem komponenty dynamicznie i znalazłem sposób jak siedo nich odwołać :-)
wątek można skasować
pozdro ;-)

0

Prosiłbym o wsztrzymanie się z kasowaniem. Mam jeszcze pytanie o podobnym temacie:
Jak uruchomić 2 wątki na kompie z dwurdzeniowym procesorem, żeby 1 wątek zajmował jeden rdzeń? i jeszcze Czy ten sam sposób będzie działał na procesorach z HyperThreading'iem?
//Jeszcze prośba do autora wątku o zmianę tytułu...

0

niestety tematu nie mogę zmienić.. :-/
proponował bym rozpocząć nowy wątek ;-)
bo do tego starego nikt nie zagląda pewnie :-(

0

Możesz zmienić temat edytując pierwszy post, ale nie rób tego bo znalazłem odpowiedź: komp sam przydziela 2 rdzeniom równą ilość wątków!

1 użytkowników online, w tym zalogowanych: 0, gości: 1