Frage

Ich bin eine generische Klasse zu schreiben, wo ich brauche Verschlungene zu verwenden.

T test1, test2;
Interlocked.Exchange<T>(ref test1, test2);

Dies wird nicht kompilieren. So bin ich gezwungen Exchange zu verwenden (Object, Object) statt selbst tho MSDN Ratschläge nicht, dass es so zu benutzen?

War es hilfreich?

Lösung

Dies funktioniert, vorausgesetzt, Ihre generische Klasse die gleichen Einschränkungen wie Interlocked.Exchange<T> hat, nämlich where T: class.

Von der Dokumentation für Interlocked.Exchange :

  

Diese Methode unterstützt nur Referenztypen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top