public CacheObject(int len) { if (len > Array.Length) { Array = new byte[len]; } else { System.Array.Clear(Array, 0, Array.Length); } Pointer = Marshal.AllocHGlobal(len); Data = new DataStream(Array, false, false); }