Ich versuche, eine generische Klasse zu erstellen, die einige statische Funktionen auf der Grundlage des Typs haben wird. Gibt es statische Mitglieder für jeden Typ? Oder nur dort, wo eine generische Klasse verwendet wird? Der Grund, warum ich frage, ist, dass ich ein Sperrobjekt für jeden Typ haben möchte, nicht ein gemeinsames.
Wenn ich also
class MyClass<T> where T:class
{
static object LockObj = new object();
static List<T> ObjList = new List<T>();
}
Ich verstehe, dass ObjList auf jeden Fall ein anderes Objekt für jeden verwendeten generischen Typ erstellen würde, aber würde das LockObj zwischen jeder generischen Instanziierung unterschiedlich sein ( MyClass<RefTypeA>
y MyClass<RefTypeB>
) oder dasselbe?