24. marts 2005 - 19:32Der er
12 kommentarer og 3 løsninger
New thread / Threadpool
Hejsa alle!
Jeg har en applikation der skal køre en række "små" jobs, som hver skal køres i en seperat tråd, og det er jo nemt lige at oprette en ny tråd hver gang et job kommer ind, lade tråden køre de 10 sekunder jobbet tager, og så bare dø.
Men er der nogen der ved hvor meget performance (hvis noget), der er at vinde ved at lave en threadpool og så genbruge trådene ?
eneste ulembe ved en threadpool er da vist at man ikke har mulighed for reference til/kontrol over tråden (bortset fra det object man har mulighed for at sende med ind i tråden). Hvis man ikke har brug for det, så er threadpool i næsten alle tilfælde at foretrække.
Der er PT plads til 25 Arbejdne tråde i .NET freamworket, dvs. at så længe du er under 25 tråde burde du ikke kunne se nogen desideret forskel... og det passer så ikke helt, for faktisk er det lidt tungere at starte en pooled thread freom for en dedikeret... så det giver faktisk performance tab... hvor meget det er ved jeg dog ikke...
når du når over 25 tråde bliver det jo afhængigt af om de arbejder på samme tid... (gør de formodentlig)... men så vil det teoretisk kunne måles...
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.