Net, басейнът потоци CLR

създаване Тема отнема време. Ако има различни кратки задачи, за да се извърши, можете да създадете набор от теми, предварително и след това трябва само да изпратите съответните искания, когато е ред за изпълнение. Би било хубаво, ако броят на тези нишки се увеличава автоматично с растежа на търсенето на поток и намалява, когато търсенето на освобождаването на ресурси.

За да създадете такъв списък на потоци от свое не е нужно. За да управлява този списък се предоставя ThreadPool клас. което намалява, колкото е необходимо, и увеличава броя на конци в басейна на максимум. Стойността на максималния брой на конци в басейна може да варира. В случая с двуядрен процесор, това е работния процес по подразбиране 1023 и 1000 входящи и изходящи потоци.

Можете да определите минимален брой теми, които трябва да бъдат започнати веднага след създаването на пула, а максималният брой на потоците, които са налични в басейна. Ако имаше някакви работни места, за да бъдат обработени и е достигнал максималния брой нишки в басейна, толкова повече нови работни места ще бъдат поставени на опашка и там да изчакат до някои от потоците, за да си свърши работата.

За да заявите поток от басейна за метод за обработка на повикване може да се използва метод QueueUserWorkItem (). Този метод е претоварена, в допълнение към инстанция на делегат WaitCallback позволи да се уточни незадължителен параметър за специални държавни данните от System.Object.

След като стартирате това приложение е, че е възможно да се използва при 1023 работни потоци текущите параметри. Пет задачи се извършват само две теми от басейна. Трябва тези резултати може да изглежда по друг начин. Освен това, ако промените периода на изчакване, за работата, и огромният брой задачи, за да бъдат обработени, след което резултатите ще бъдат по-различни.

Net, басейнът потоци CLR

Тук може да възникне въпросът: каква е ползата от използването на поддържан конец басейн CLR сравнение с изричното създаването на обект Тема? Тези предимства ще бъдат:

Poole потоци ефективно контролира потока чрез намаляване на количеството произведени, се стартира и спира потока.

Използването на басейн конец, можете да се съсредоточи върху решаването на проблема, а не на потоци кандидатстване инфраструктура.

Въпреки това, в някои случаи, за предпочитане ръчно управление на потока. Тема басейни е много лесно да се приложат, са редица ограничения, които са изброени по-долу:

Всички теми, в басейна на конеца са фон. В случай на приключване на всички приоритетни потоци в процеса на работата на всички фонови потоци също спира. Направи потока на предимство не може да бъде басейн.

Вие не можете да промените приоритета или името на басейна в потока. Всички теми, в басейна са потоци, многонишков апартамент (многонишков апартамент - MTA), както и много COM обекти изискват използването на една единствена резба апартамент конец (еднонишкови апартамент - ДАТ).

Потоци в локва подходящ за извършване само на кратки задачи. Ако искате да поток да функционира през цялото време (като, например, потока на проверката на правописа в Word), тя трябва да бъде създаден с помощта на класа Thread.

Вие не можете да създадете тема с фиксирана идентичност, за да бъде в състояние да го прекъсне или да намерите името.