Theadpool dişlerinin birincil ihtiyacı, neredeyse anında tamamlanması beklenen kısa küçük görevleri yerine getirmektir. Donanım kesme işleyicileri genellikle çekirdek olmayan kod için uygun olmayan bir yığınlama bağlamında çalışır, ancak bir donanım kesme işleyicisi bir kullanıcı modu G / Ç tamamlama geri aramasının mümkün olan en kısa sürede çalıştırılması gerektiğini keşfedebilir. Böyle bir şeyi yürütmek için yeni bir iş parçacığı oluşturmak büyük bir aşırıya kaçma olacaktır. G / Ç tamamlama geri çağrılarını veya diğer benzer şeyleri çalıştırmak için gönderilebilen önceden oluşturulmuş birkaç iş parçacığına sahip olmak çok daha verimlidir.
Bu tür iş parçacıklarının önemli bir yönü, G / Ç tamamlama yöntemleri her zaman esasen anında tamamlanır ve hiçbir zaman engellenmezse ve şu anda bu tür yöntemleri çalıştıran bu iş parçacıklarının sayısının en az işlemci sayısına eşit olması, diğer iş parçacıklarının tek yoludur. yukarıda bahsedilen yöntemlerden biri bitmeden önce, diğer yöntemlerden birinin bloke olması veya yürütme süresinin normal bir diş açma zaman dilimini aşması durumunda çalışabilir; iş parçacığı havuzu istendiği gibi kullanılırsa bunların hiçbiri çok sık olmamalıdır.
Bir yöntemin yürütülmeye başladığı zaman 100 ms içinde çıkması beklenemezse, yöntemin ana iş parçacığı havuzu dışındaki bazı yollarla yürütülmesi gerekir. Biri CPU yoğun olan ancak engellenmeyen çok sayıda göreve sahipse, bunları kullandığından beri "ana" threadpool'dan ayrı olan bir uygulama iş parçacığı havuzu (CPU çekirdeği başına bir tane) kullanarak göndermek yararlı olabilir. tıkanmayan CPU yoğun görevleri yürütürken çekirdeklerden daha fazla iş parçacığı üretken olmayacaktır. Bununla birlikte, bir yöntemin yürütülmesi bir saniye veya daha uzun sürecek ve zamanının çoğunu bloke edecekse, yöntem muhtemelen özel bir iş parçacığında çalıştırılmalı ve neredeyse kesinlikle bir ana iş parçacığı iş parçacığında çalıştırılmamalıdır. Uzun süren bir işlemin bir G / Ç geri çağırma gibi bir şeyle tetiklenmesi gerekiyorsa,