Skip to content

Commit afa56e3

Browse files
MsgPack perf (#1845)
1 parent e7b84b7 commit afa56e3

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

Diff for: src/Microsoft.AspNetCore.SignalR.Protocols.MsgPack/Internal/Protocol/MessagePackHubProtocol.cs

+10-2
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,11 @@ private void WriteInvocationMessage(InvocationMessage message, Packer packer)
322322
packer.PackString(message.InvocationId);
323323
}
324324
packer.PackString(message.Target);
325-
packer.PackObject(message.Arguments, SerializationContext);
325+
packer.PackArrayHeader(message.Arguments.Length);
326+
foreach (var arg in message.Arguments)
327+
{
328+
packer.PackObject(arg, SerializationContext);
329+
}
326330
}
327331

328332
private void WriteStreamInvocationMessage(StreamInvocationMessage message, Packer packer)
@@ -332,7 +336,11 @@ private void WriteStreamInvocationMessage(StreamInvocationMessage message, Packe
332336
PackHeaders(packer, message.Headers);
333337
packer.PackString(message.InvocationId);
334338
packer.PackString(message.Target);
335-
packer.PackObject(message.Arguments, SerializationContext);
339+
packer.PackArrayHeader(message.Arguments.Length);
340+
foreach (var arg in message.Arguments)
341+
{
342+
packer.PackObject(arg, SerializationContext);
343+
}
336344
}
337345

338346
private void WriteStreamingItemMessage(StreamItemMessage message, Packer packer)

0 commit comments

Comments
 (0)