public Handle Update(Handle handle, TItem value) { var raw = _serialize(value); var block = _heap.GetAllocatedBlock(handle); if (block.Length != raw.Length) { _heap.Free(handle); handle = _heap.Allocate(raw.Length); } _heap.Write(handle, raw); return(handle); }