Является ли это поведение результатом сбоя моего кода?
Нет, это обычное ведение домашнего хозяйства IIS.Ваше приложение не используется, и IIS решила выпустить и перезапустить приложение.Одна из причин - освободить память.Другой способ предотвращает медленное использование всей памяти утечками памяти.
Это запланировано?
Это контролируется Idle Timeout
.Вы можете сделать это длиннее или короче.Я не рекомендую изменять этот параметр.Подумайте, зачем вам нужно, чтобы ваша программа запускалась, когда ничего не происходит (она простаивает).
и как мне предотвратить это / определить причину?
Вы можетеотключить утилизацию или отложить ее, изменив Idle Timeout
.