prológus: Életemben először használok java-t, de a szálkezelés miatt kénytelen vagyok használni. (bár eddig simán vettem az akadályokat)
A probléma a következő.
Adott egy program ami max n szállal futhat. Ezt a következő kóddal próbáltam megoldani:
http://rafb.net/p/I4nuKe83.html
A probléma az, hogy ha a thread osztályba direkt olyan kódot teszek ami lassan fut (timeout 100 mp-ig), akkor is a következő for cikluskor a 0. elem futását false-nak veszi és azt indítja el megint. Hogyan lehet ilyen problémát elegánsan megoldani?
- 2116 megtekintés
Hozzászólások
Hol van itt több thread? (nincs egy darab Thread.start() hívás se...)
- A hozzászóláshoz be kell jelentkezni
Már teljesen elfelejtettem miért nem kérdezek fórumokon...
- A hozzászóláshoz be kell jelentkezni
Akarsz róla beszélni? ;)
-- "Bízzál Istenben és tartsd szárazon a puskaport!" - Cromwell --
-- Sayusi Ando - http://sayusi.hu --
- A hozzászóláshoz be kell jelentkezni
Mert fogalmad sincs, hogy mit csinálsz, és mit akarsz kérdezni? (;
- A hozzászóláshoz be kell jelentkezni
De attól még nem kell a fejét leszedni, nem?
-- "Bízzál Istenben és tartsd szárazon a puskaport!" - Cromwell --
-- Sayusi Ando - http://sayusi.hu --
- A hozzászóláshoz be kell jelentkezni
Persze, hogy nem, nem is szedte le senki.
- A hozzászóláshoz be kell jelentkezni
A kód amit linkeltél nem indít több szálat. Valahol olvass utána hogy is működnek ezek a szálak.
Sőt! Ha zöldmezős a dolog amit csinálsz akkor nem érdemes a thread API-t használni, hanem inkább egyből tanuld meg a concurrent API-t. Ez a cikk például erről szól (nem olvastam el, de egyike az első gugli találatoknak): http://developerlife.com/tutorials/?p=24
Concurrent API-ban a thread pool eleve meg van valósítva, csak használni kell megtanulni.
- A hozzászóláshoz be kell jelentkezni
Kösz megnézem.
szerk.: igen a probléma alapvetően zöldmezős. Ez lesz a jó megoldás. Köszi még egyszer!
- A hozzászóláshoz be kell jelentkezni