Windows Azure - событие, когда роль уничтожена

Если у меня есть попытка / отлов вокруг основного цикла в экземпляре рабочей роли, будет ли какое-либо исключение, если, например, рабочая роль будет удалена для обновления / перезагрузки?

Есть ли другой способ перехватить событие "destroy", например, глобальный обработчик try / catch или деструктор? (наверняка, это то, что находится вокруг любого экземпляра за кулисами, чтобы они могли изолировать экземпляры от среды)

Каковы общие события жизненного цикла для экземпляра рабочей / веб-роли?

Всегда говорят, что Azure является отказоустойчивой и стабильной платформой, но также говорят, что экземпляр может уйти в любое время. как обеспечить, чтобы некоторые "критические" части кода не прерывались средой и выполнялись непрерывно.

1 ответ

Когда роль снимается упорядоченным образом, OnStop метод в вашем workerrole.cs файл будет называться;

MSDN Link

public override void OnStop()
{
    try
    {
        // Add code here that runs when the role instance is to be stopped
    }
    catch (Exception e)
    {
        Trace.WriteLine("Exception during OnStop: " + e.ToString());
        // Take other action as needed.
    }
}

Однако я думаю, что ваш улов будет достаточным для любых не изящных проблем.;)

Другие вопросы по тегам