15. februar 2003 - 20:06Der er
4 kommentarer og 1 løsning
Multi-threading
Jeg er igang med at skrive et program, som starter to tråde op ved hjælp af Thread klassen. Der oprettes en ny instans af Thread objektet for hver tråd.
Mit spørgsmål lyder .. Hvordan kan det være, at der kun gives kontrol til den første tråd som startes???
Ja du giver jo ikke meget at arbejde med, men lad mig prøve at hjælpe alligevel ;).
1. Om en tråd er en BackGround thread eller ej anfægter ikke direkte om den får en time slice at køre i eller ej. Men hvis din Main Thread ikke afventer de tråde den starter, og disse tråde er sat til BackGround, så vil de blive Aborted idet Main tråden exiter. Dvs. at hvis en sådan tråd enten venter på en resource eller bare sleeper, så vil den ville afbrudt og terminere.
2. Det er ikke pinedød nødvendigt at kalde Sleep for at videregive kontrol til en anden tråd idet Windows bruger Time Slicing (Preemptive multitasking), dvs alle processer og dermed tråde er garanteret en hvis processor tid. At det er god praksis at gøre det er en anden snak, så man kan terminere tråden.
fandt en løsning. har lavet mit eget ThreadPool objekt, som holder styr på hvad mine tråde laver.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.