Referenzieren this Antwort auf eine Frage.Sind BinaryFormatter serialisieren und deserialisieren threadsicher?
(und GC'ing)private static BinaryFormatter formatter = new BinaryFormatter();
public static T DeepClone<T>(this T a)
{
using(MemoryStream stream = new MemoryStream())
{
formatter.Serialize(stream, a);
stream.Position = 0;
return (T)formatter.Deserialize(stream);
}
}
So vermeidet den Aufbau eines neuen BinaryFormatter für jeden Anruf:
Kann dies als neu geschrieben werden?
Dieser Code-Pfad wird sehr häufig getroffen, da es unsere Caching-Ebene betrifft und ich möchte es so leicht wie möglich machen.
Danke.
Ein klassisches Argument für unveränderlich;) –