Exigences : Les algorithmes courants d’équilibrage de charge incluent le polling, la randomisation, etc., pour .NET, comment implémenter des algorithmes de polling sécurisés pour les threads ?
Sur la base de l’implémentation Interlock, des opérations atomiques sont fournies pour les variables partagées par plusieurs threads. En même temps, cela garantit que Interlocked.Increment comporte des variables accrues et est sûr à utiliser après un débordement. En fait, en raison du problème de la valeur maximale, cela ne garantit pas un « sondage complet », et c’est un compromis de performance, et la déviation est effectivement acceptable. Par exemple, seule une équité de 99,999999 % peut être garantie, ce qui équivaut à un sondage complet.
Les rendus sont les suivants :
Le code est le suivant :
|