Czasami przechodzę przez aplikację w trybie debugowania, dopóki nie wykonam "kroku" w konkretnej linii i zajmuje to zbyt dużo czasu, aby coś zrobić, zjedzenie 100% CPU. W tym momencie klikam przycisk "Przerwa" i próbuję znaleźć to, co działa tak długo.Stary, gdzie jest moja nitka ?? (lub: zmień nazwę wątku puli wątków .NET - czy jest to możliwe?)
Problem polega na tym, że ta aplikacja ma ogromną liczbę wątków uruchomionych, a w momencie, gdy kliknęłam "Przerwa", punkt wykonywania przechodzi do wątku GUI, który prawdopodobnie po prostu robi "Poczekaj". Muszę następnie przebić się przez istniejące wątki (policzyłem je - tym razem mają 37!), Próbując znaleźć ten, który wykonywałem. Musiałbym spojrzeć na stos każdego z nich, dopóki nie znajdę tego, którego szukałem.
Wątek, który używam, jest wywołaniem asynchronicznym, więc działa na wątku puli wątków. Chciałbym nadać temu wątkowi opisową nazwę i zresetować jego nazwę na końcu operacji.
Problemem jest to, nieruchomości można ustawić tylko raz, potem on daje InvalidOperationException
.
Wszelkie sugestie?
O tak, używam VS2005/.NET 2.0, ale jestem również ciekawy, czy nowsze wersje mają lepsze sposoby radzenia sobie z tym.
Awansuj tylko dla swojego tytułu! (nie bardzo, świetne pytanie) –