Zarządzanie wątkami

0

Witam,

W dużym uproszczeniu, w programie mam 1000 zadań do zrobienia (za pomocą wątków), jednocześnie program wykonuje 10 zadań, jeśli któreś zadanie skończy się wykonywać to automatycznie zostaje uruchomiony kolejny wątek.

czy znacie może podobną klasę do: https://sourceforge.net/projects/threadpoolpas/

wykorzystuje ją w moim programie, ale albo robię coś źle, albo zawiera ona błędy. Raz na 1000 razy wysypuje mi się (access violation) w unicie tej klasy...

z góry dzięki

0

Bardzo się cieszę że piszesz aplikacje, tylko po co nam to tutaj opisujesz? Domyślam się że masz problem tylko nie zrobiłeś najważniejszej rzeczy: ZAPYTAŁEŚ O COŚ. poza tym, my niestety bez kodu raczej nie działamy.

Popraw pytanie to może ktoś odpowie (ignorując to że korzystasz z jakiejś biblioteki której zapewne nikt nie zna).

EDIT: Ah tfu, niewyspany, zadałeś pytanie :D . Tak znam podobną, z tym że nie unit a klasę: TThread. Mówi coś?

0

hmmm chyba dalej niewyspany, czego nie rozumiesz w moim pytaniu? Chodzi mi o funkcjonalność zarządzania wątkami, stworzonych jest 10000, ale pracują tylko np. 3 a pozostale 99997 czeka grzecznie w kolejce, aż jeden łaskawie skończy swoją robotę, by móc zająć jego miejsce... Taka funkcję spełnia podana przeze mnie biblioteka, szukam czegoś podobnego, może ktoś korzysta? Lub ma własny sposób związany z zarządzaniem (kolejkowaniem) wątków?

0

po co ci 10k wątków skoro i tak 3 pracują? nie lepiej zrobić 3 wątki i zrobić kolejkę zadań? robisz po prostu 3 wątki i pobieranie zadania z kolejki oraz wrzucanie wyników wkładasz w sekcje krytyczne

0

pula wątków, coś takiego posiada windows na poziomie api. po ągielskiemu zwie się toto thread pool, dokładnie tak samo, jak biblioteka, której nazwę podałeś. więcej na msdn i na google.

tworzenie fhuj wątków i następnie korzystanie z ich niecałego promila to chyba żart?

0

hmmm chyba dalej niewyspany

Wiesz, że możesz sobie coś podobnego napisać w parenaście minut? Zwłaszcza że biblioteka nie działa.

poza tym, skoro masz 10k TThreadów to ja bym się nie dziwił że jest bład.

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