Skip to content

Commit 8b907ab

Browse files
authored
Experimental/netstats/review fixes (#970)
1 parent fec815b commit 8b907ab

22 files changed

+304
-553
lines changed

com.unity.multiplayer.mlapi/Runtime/Core/NetworkBehaviour.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
using MLAPI.Serialization.Pooled;
1515
using MLAPI.Transports;
1616
using Unity.Profiling;
17-
using Debug = UnityEngine.Debug;
1817

1918
namespace MLAPI
2019
{

com.unity.multiplayer.mlapi/Runtime/Core/NetworkManager.cs

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ public ulong LocalClientId
224224
/// </summary>
225225
public string ConnectedHostname { get; private set; }
226226

227-
public INetworkMetrics NetworkMetrics { get; private set; }
227+
internal INetworkMetrics NetworkMetrics { get; private set; }
228228

229229
internal static event Action OnSingletonReady;
230230

@@ -351,19 +351,6 @@ private void Initialize(bool server)
351351

352352
SceneManager = new NetworkSceneManager(this);
353353

354-
m_RpcBatcher = new RpcBatcher(this);
355-
356-
if (MessageHandler == null)
357-
{
358-
IInternalMessageHandler messageHandler = new InternalMessageHandler(this);
359-
360-
#if DEVELOPMENT_BUILD || UNITY_EDITOR
361-
messageHandler = new InternalMessageHandlerProfilingDecorator(messageHandler);
362-
#endif
363-
// Only create this if it's not already set (like in test cases)
364-
MessageHandler = messageHandler;
365-
}
366-
367354
// Only create this if it's not already set (like in test cases)
368355
MessageHandler ??= CreateMessageHandler();
369356

@@ -1153,7 +1140,7 @@ private void HandleRawTransportPoll(NetworkEvent networkEvent, ulong clientId, N
11531140
}
11541141

11551142
private readonly NetworkBuffer m_InputBufferWrapper = new NetworkBuffer(new byte[0]);
1156-
private RpcBatcher m_RpcBatcher;
1143+
private readonly RpcBatcher m_RpcBatcher = new RpcBatcher();
11571144

11581145
internal void HandleIncomingData(ulong clientId, NetworkChannel networkChannel, ArraySegment<byte> data, float receiveTime, bool allowBuffer)
11591146
{

com.unity.multiplayer.mlapi/Runtime/Messaging/RpcBatcher.cs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,6 @@ public SendStream()
3535
// Used to mark longer lengths. Works because we can't have zero-sized messages
3636
private const byte k_LongLenMarker = 0;
3737

38-
private readonly NetworkManager m_NetworkManager;
39-
40-
public RpcBatcher(NetworkManager networkManager)
41-
{
42-
m_NetworkManager = networkManager;
43-
}
44-
4538
private void PushLength(int length, ref PooledNetworkWriter writer)
4639
{
4740
// If length is single byte we write it

com.unity.multiplayer.mlapi/Runtime/Messaging/RpcQueue/RpcQueueProcessor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -290,7 +290,7 @@ internal RpcQueueProcessor(RpcQueueContainer rpcQueueContainer, NetworkManager n
290290
{
291291
m_RpcQueueContainer = rpcQueueContainer;
292292
m_NetworkManager = networkManager;
293-
m_RpcBatcher = new RpcBatcher(networkManager);
293+
m_RpcBatcher = new RpcBatcher();
294294
}
295295
}
296296
}

com.unity.multiplayer.mlapi/Runtime/Metrics/NetworkMetrics.cs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,24 @@ namespace MLAPI.Metrics
99
{
1010
public class NetworkMetrics : INetworkMetrics
1111
{
12-
private readonly NetworkManager m_NetworkManager;
12+
readonly NetworkManager m_NetworkManager;
1313

1414
readonly EventMetric<NamedMessageEvent> m_NamedMessageSentEvent = new EventMetric<NamedMessageEvent>(MetricNames.NamedMessageSent);
1515
readonly EventMetric<NamedMessageEvent> m_NamedMessageReceivedEvent = new EventMetric<NamedMessageEvent>(MetricNames.NamedMessageReceived);
16-
1716
readonly EventMetric<UnnamedMessageEvent> m_UnnamedMessageSentEvent = new EventMetric<UnnamedMessageEvent>(MetricNames.UnnamedMessageSent);
1817
readonly EventMetric<UnnamedMessageEvent> m_UnnamedMessageReceivedEvent = new EventMetric<UnnamedMessageEvent>(MetricNames.UnnamedMessageReceived);
19-
2018
readonly EventMetric<NetworkVariableEvent> m_NetworkVariableDeltaSentEvent = new EventMetric<NetworkVariableEvent>(MetricNames.NetworkVariableDeltaSent);
2119
readonly EventMetric<NetworkVariableEvent> m_NetworkVariableDeltaReceivedEvent = new EventMetric<NetworkVariableEvent>(MetricNames.NetworkVariableDeltaReceived);
22-
23-
private readonly EventMetric<ObjectSpawnedEvent> m_ObjectSpawnSentEvent = new EventMetric<ObjectSpawnedEvent>(MetricNames.ObjectSpawnedSent);
24-
private readonly EventMetric<ObjectSpawnedEvent> m_ObjectSpawnReceivedEvent = new EventMetric<ObjectSpawnedEvent>(MetricNames.ObjectSpawnedReceived);
25-
private readonly EventMetric<ObjectDestroyedEvent> m_ObjectDestroySentEvent = new EventMetric<ObjectDestroyedEvent>(MetricNames.ObjectDestroyedSent);
26-
private readonly EventMetric<ObjectDestroyedEvent> m_ObjectDestroyReceivedEvent = new EventMetric<ObjectDestroyedEvent>(MetricNames.ObjectDestroyedReceived);
27-
private readonly EventMetric<ServerLogEvent> m_ServerLogSentEvent = new EventMetric<ServerLogEvent>(MetricNames.ServerLogSent);
28-
private readonly EventMetric<ServerLogEvent> m_ServerLogReceivedEvent = new EventMetric<ServerLogEvent>(MetricNames.ServerLogReceived);
29-
20+
readonly EventMetric<ObjectSpawnedEvent> m_ObjectSpawnSentEvent = new EventMetric<ObjectSpawnedEvent>(MetricNames.ObjectSpawnedSent);
21+
readonly EventMetric<ObjectSpawnedEvent> m_ObjectSpawnReceivedEvent = new EventMetric<ObjectSpawnedEvent>(MetricNames.ObjectSpawnedReceived);
22+
readonly EventMetric<ObjectDestroyedEvent> m_ObjectDestroySentEvent = new EventMetric<ObjectDestroyedEvent>(MetricNames.ObjectDestroyedSent);
23+
readonly EventMetric<ObjectDestroyedEvent> m_ObjectDestroyReceivedEvent = new EventMetric<ObjectDestroyedEvent>(MetricNames.ObjectDestroyedReceived);
3024
readonly EventMetric<RpcEvent> m_RpcSentEvent = new EventMetric<RpcEvent>(MetricNames.RpcSent);
3125
readonly EventMetric<RpcEvent> m_RpcReceivedEvent = new EventMetric<RpcEvent>(MetricNames.RpcReceived);
26+
readonly EventMetric<ServerLogEvent> m_ServerLogSentEvent = new EventMetric<ServerLogEvent>(MetricNames.ServerLogSent);
27+
readonly EventMetric<ServerLogEvent> m_ServerLogReceivedEvent = new EventMetric<ServerLogEvent>(MetricNames.ServerLogReceived);
3228

33-
private Dictionary<ulong, NetworkObjectIdentifier> m_NetworkGameObjects = new Dictionary<ulong, NetworkObjectIdentifier>();
29+
readonly Dictionary<ulong, NetworkObjectIdentifier> m_NetworkGameObjects = new Dictionary<ulong, NetworkObjectIdentifier>();
3430

3531
public NetworkMetrics(NetworkManager networkManager)
3632
{

com.unity.multiplayer.mlapi/Tests/Editor/InternalMessageHandlerProfilingDecoratorTests.cs

Lines changed: 0 additions & 147 deletions
This file was deleted.

com.unity.multiplayer.mlapi/Tests/Editor/RpcBatcherTests.cs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,7 @@ public void SendWithThreshold()
1717
const int k_BatchThreshold = 256;
1818
const int k_QueueItemCount = 128;
1919

20-
var gameObject = new GameObject("NetworkManager");
21-
var networkManager = gameObject.AddComponent<NetworkManager>();
22-
23-
var sendBatcher = new RpcBatcher(networkManager);
20+
var sendBatcher = new RpcBatcher();
2421
var sendStreamQueue = new Queue<NetworkBuffer>();
2522
for (int i = 0; i < k_QueueItemCount; ++i)
2623
{
@@ -52,7 +49,7 @@ public void SendWithThreshold()
5249
sendStreamQueue.Enqueue(queueStream);
5350
});
5451

55-
var recvBatcher = new RpcBatcher(networkManager);
52+
var recvBatcher = new RpcBatcher();
5653
var recvItemCounter = 0;
5754
foreach (var recvStream in sendStreamQueue)
5855
{
@@ -78,10 +75,7 @@ public void SendWithoutThreshold()
7875
const int k_BatchThreshold = 0;
7976
const int k_QueueItemCount = 128;
8077

81-
var gameObject = new GameObject("NetworkManager");
82-
var networkManager = gameObject.AddComponent<NetworkManager>();
83-
84-
var sendBatcher = new RpcBatcher(networkManager);
78+
var sendBatcher = new RpcBatcher();
8579
var sendStreamQueue = new Queue<NetworkBuffer>();
8680
for (int i = 0; i < k_QueueItemCount; ++i)
8781
{
@@ -113,7 +107,7 @@ public void SendWithoutThreshold()
113107
sendStreamQueue.Enqueue(queueStream);
114108
});
115109

116-
var recvBatcher = new RpcBatcher(networkManager);
110+
var recvBatcher = new RpcBatcher();
117111
var recvItemCounter = 0;
118112
foreach (var recvStream in sendStreamQueue)
119113
{

0 commit comments

Comments
 (0)