Obsługa TPL (wielozadaniowość)

Obsługa TPL (wielozadaniowość)
osamex
  • Rejestracja:ponad 13 lat
  • Ostatnio:prawie 3 lata
  • Postów:76
0

Witam,

W jaki sposób ograniczyć "przeszkadzanie" systemu operacyjnego podczas działania mojego programu na watkach? To znaczy:

mam program który ma zadeklarowane 3 zadania (Task) i kozysta z 3 rdzeni chciałbym tak napisac aplikacje aby wszytskie zadania wykonywane w moim programie miały najwyższy prorytet i zeby system pracował sobie na jednym rdzeniu ale nie wstrzymywał działan na pozostałych, po prostu zablokować lub mocno ograniczyć mu dostep do nich).

Pozdrawiam
Oskar

Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:około 4 godziny
1

Wiedz, że nadmierne manipulowanie priorytetami może spowolnić pracę zamiast przyspieszyć (np. jeden z twoich wątków musi wykonać jakąś operację systemową, ale że dałeś swoim wątkom najwyższy priorytet to nie ma czasu na wykonanie tej operacji, w rezultacie nagle wszystko stoi i czeka).
Są różne funkcje do ustawiania priorytetów, np. Thread.Priority ale bardziej się zastanów, czy nie ma gdzieś wąskiego gardła w twoich wątkach, albo jak przyspieszyć algorytm — kombinowanie niewiele ci przyniesie, a może dużo pogorszyć.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.