Pracuję aplikacji ASP.NET 4 i używać pełnego IIS również podczas programowania (z kilku powodów, z których korzystam z wielu domen wskazujących na aplikację).Opóźnienie AppDomain recyklingu na zmianę folderu
Kiedy buduję projekt w Visual Studio IIS przetwarza aplikację AppDomain i ładuje nowo utworzoną, ale teraz mam problem, że robi to "szybko".
Mam kilka skryptów na mojej stronie, które uruchamiają App-Startup, gdy tylko zostaną przetworzone (jak stale otwarte kanały SignalR), a więc nowa AppDomain jest już utworzona, gdy zbudowana jest tylko połowa mojego projektu i dlatego przetwarza drugą czas, który faktycznie się zawiesza, ponieważ mam PreApplicationStartMethod
kopiowanie niektórych bibliotek DLL-ów do katalogu kopiowania w tle, ale "stare biblioteki DLL" są nadal zablokowane przez pierwszą AppDomain.
Jeśli wtedy czekam ~ 10 s wszystko jest w porządku i uruchamia się moja "nowa AppDomena".
Rozwiązałem ten problem, po prostu informując IIS, aby poczekał z ponownym odczytaniem przez kilka sekund, aby kompilacja mogła zakończyć się po wykryciu zmian w folderze bin
.
Więc na moje główne pytanie:
Czy można opóźnić przetwarzanie AppDomain w IIS?
Jeśli jest to tylko problem z blokadą, czy próbowałeś "wyłączyć nakładanie się recyklingu", aby uniknąć dwóch jednoczesnych procesów roboczych? – JoeBilly