Nous utilisons un service WCF et l'hébergeons dans notre service Windows. Ce concept est expliqué here.Problèmes liés au thread long-coureur dans le service Windows WCF
Nous avons un appel de service WCF qui ressemble à ceci:
[System.ServiceModel.OperationContractAttribute(...)]
[System.ServiceModel.FaultContractAttribute(...)]
void TriggerLongRunningOperation(int id);
Dans cet appel WCF, nous essaimer un peu et oublier le feu de nouvelles discussions pour accomplir des tâches de fond. Pour la plupart, il n'y en aura qu'un, mais il pourrait y en avoir plusieurs. La requête WCF se termine essentiellement immédiatement et le thread fire-and-forget effectue son travail. Les opérations qui sont séparées peuvent durer de 2 minutes à 1 heure.
Je suis préoccupé par l'existence d'un thread à exécution longue dans le processus WCF. Cependant, comme il n'est pas hébergé via IIS, nous n'avons pas à nous inquiéter du recyclage du pool d'applications. Quelles sont les préoccupations dont je dois tenir compte lors de l'exécution de nouveaux threads dans un service WCF hébergé dans un service Windows? Dans quels cas le thread serait-il abandonné?
.NET 4.5.2
Vous pouvez consulter un document d'information comme http://hangfire.io. Cela peut s'exécuter dans le service Windows et fournir une exécution de tâche d'arrière-plan durable. –