Здравствуйте, TarasCo, Вы писали:
TC>Sleep(1000) — эта строчка не понравилась. Нехорошо наверное тормозить рабочий поток надолго. Система может "заподозрить" неладное и прибить его например. Для проверки поставтье еще один printf после слипа....
TC>Можно также укзать флажок WT_EXECUTELONGFUNCTION в QueueUserWorkItem
О, спасибо за подсказку. Оказалось все банально — программа просто-напросто завершалась, и соответственно все последующие вызовы ThreadProc прибивались. Если программа будет выполняться дальше, то и вызовы будут происходить как надо. По поводу потока — из-за Sleep() система не может его убить, да и этот Sleep только как тест использовался — в реале не его месте всякий долгострой крутится...
И еще по ходу появился вопрос — какие-то крайности получаются с количеством потоков в пуле — либо по числу процессоров (т.е. в большинстве случаев 1) либо, при использровании WT_EXECUTELONGFUNCTION — сколько будет запросов (а ну как придет 100 или 1000 — так сервер и ляжет

нельзя ли сделать чтобы было Threads = CPU*2?
(интересно, а HT в P4 считается?)