Azure service fabric 在服务结构群集中删除无状态服务时出错

Azure service fabric 在服务结构群集中删除无状态服务时出错,azure-service-fabric,service-fabric-stateless,Azure Service Fabric,Service Fabric Stateless,在服务结构集群中,我有一个无状态服务,它有一个while(true)循环在RunAsync方法中连续运行。由于这个while循环,我发现很难从集群中删除应用程序。每次尝试删除进程时都会发生错误。通常我会尝试部署应用程序一次以删除代码。要在应用程序上重新部署代码,我必须部署两次。在不移除无限while循环的情况下,是否有一种解决方法 更新:Runasync方法 protected override async Task RunAsync(CancellationToken cancellation

在服务结构集群中,我有一个无状态服务,它有一个while(true)循环在RunAsync方法中连续运行。由于这个while循环,我发现很难从集群中删除应用程序。每次尝试删除进程时都会发生错误。通常我会尝试部署应用程序一次以删除代码。要在应用程序上重新部署代码,我必须部署两次。在不移除无限while循环的情况下,是否有一种解决方法

更新:Runasync方法

protected override async Task RunAsync(CancellationToken cancellationToken)
    {
        //making sure the thread is active 
        while (true)
        {
           do something;
        }

    }

感谢您的输入。

在关机期间,传递给RunAsync的取消令牌被取消。 您需要在主循环中检查取消令牌的IsCancellationRequested属性。当这变为true时,如果调用,则令牌的ThrowIfCancellationRequested方法将抛出OperationCanceledException

如果您的服务在合理的时间内没有响应这些API调用,ServiceFabric可以强制终止您的服务。通常,这仅在应用程序升级或删除服务时发生。默认情况下,此超时为15分钟


请参阅此文档以获得良好的参考:

为了更好地理解,您可以在此处添加RunAsync方法吗?我已经添加了RunAsync方法。