2011-01-20 12 views
5

I zostały modyfikację modelu procesu .net, aby rozwiązać pewne problemy z przepustowością. Czytałem wiele artykułów tam, ale wymagają wyjaśnienia właściwości minFreeThreads. Czy podniesienie tej wartości oznacza, że ​​więcej wątków jest zarezerwowanych do przetwarzania wychodzących żądań (wywołanie zewnętrznej usługi sieciowej)?Model procesu minFreeThreads wyjaśnienie

Przypadek użycia: Mam procedurę obsługi asynchronicznej, która czeka na oddzwonienie, aby odpowiedzieć na requester. Istnieje zegar, który powoduje, że prośby przekraczające limit czasowy odpowiadają "brak danych". Jeśli istnieją 100 z tych wniosków, które wymagają odpowiedzi, ma wysoką wartość minFreeThreads umożliwić większej liczby tych wniosków wyjść?

Odpowiedz

2

Mimo przestarzałych i nieaktualnych: http://msdn.microsoft.com/en-us/library/ff647787.aspx

interpretować tabelę 6.1 w następujący sposób: (dla 1 procesora/obudowy rdzenia) maxWorkerThreads jest liczba wątków dostępnych dla każdej operacji (przychodzące, wychodzące) minFreeThreads jest znak niskiej wody dla żądania INCOMING. Jeśli ten znak zostanie osiągnięty, nie będzie przyjmowane więcej przychodzących żądań, będą one umieszczane w kolejce. Kolejkowanie że pomoże dostać się z serwerem Web jakichkolwiek nieuregulowanych rzeczy (jak przetwarzanie połączeń wychodzących) Zestawienie sporządzono.

Aby odpowiedzieć na pytanie, na podstawie niniejszych wytycznych, nie podnosząc minFreeThreads nie pomoże wydajności w Twoim przypadku, to może nawet zmniejszyć.

Może to jest dobre (nie jest już rozwijany) punkt startowy do zwiedzania dalej: http://msdn.microsoft.com/en-us/library/ff647791.aspx#scalenetchapt15_topic12

+0

Dzięki Rene, że ma sens. –