From ffb3a994a2984e740834b962eaf777538ec6d43e Mon Sep 17 00:00:00 2001 From: David Pine Date: Tue, 5 Sep 2023 07:41:17 -0500 Subject: [PATCH] Update Writer.cs --- src/Orleans.Serialization/Buffers/Writer.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/Orleans.Serialization/Buffers/Writer.cs b/src/Orleans.Serialization/Buffers/Writer.cs index 76825d0ee4..a003afe1e6 100644 --- a/src/Orleans.Serialization/Buffers/Writer.cs +++ b/src/Orleans.Serialization/Buffers/Writer.cs @@ -155,11 +155,12 @@ internal Writer(TBufferWriter output, Span span, SerializerSession session [MethodImpl(MethodImplOptions.AggressiveInlining)] public void Dispose() { + // Avoid boxing the struct, for better perf and codegen. if (typeof(TBufferWriter).IsValueType) { - if (Output is IDisposable disposable) + if (Output is IDisposable) { - disposable.Dispose(); + ((IDisposable)Output).Dispose(); } } else @@ -548,4 +549,4 @@ private void WriteVarUInt64Slow(ulong value) BinaryPrimitives.WriteUInt16LittleEndian(_currentSpan.Slice(sizeof(ulong)), (ushort)upper); } } -} \ No newline at end of file +}