Я пытаюсь оптимизировать фрагмент кода, который клонирует объект:
#region ICloneable
public object Clone()
{
MemoryStream buffer = new MemoryStream();
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(buffer, this); // takes 3.2 seconds
buffer.Position = 0;
return formatter.Deserialize(buffer); // takes 2.1 seconds
}
#endregion
Довольно стандартные вещи. Проблема в том, что объект довольно громоздкий и занимает 5,4 секунды (согласно ANTS Profiler - я уверен, что профилировщик перегружен, но все же).
Есть ли лучший и более быстрый способ клонирования?