Frage

Ich muss das [serialisierbare] Attribut zu einer Klasse hinzufügen, die extrem leistungsempfindlich ist.

Wird dieses Attribut Auswirkungen auf den Betrieb der Klasse haben?

War es hilfreich?

Lösung

Instanzen von Attributklassen werden nur erstellt, wenn sie zum ersten Mal zugegriffen werden. Wenn Sie in dieser bestimmten Klasse keine Serialisierung durchführen, die SerializableAttribute() Der Konstruktor wird niemals aufgerufen, daher wird er keine Leistungsprobleme verursachen.

Hier ist ein interessanter Artikel über Attributkonstruktoren:http://www.codingonthetrain.com/2008/10/attribute-constructors.html

Andere Tipps

Attribute sind eine Metadatenanmerkungen, sodass sie einer Klasse zur Laufzeit kein Gewicht hinzufügen, es sei denn, sie werden von der Laufzeit auf eine bestimmte Weise interpretiert, die die Klasse anders behandelt.

Serialisierbar] ist einfach ein Markerattribut, das als Konvention verwendet wird, um anzuzeigen, dass die Klasse serialisierbar ist, es keine Wirkung hat und die Laufzeit die Klassen nicht auf besondere Weise behandelt.

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