public EchoClient(int id, Configuration config, BenchmarkStatistics benchmarkStatistics) : base(config) { this.id = id; this.config = config; this.benchmarkStatistics = benchmarkStatistics; deliveryMethod = LiteNetLibBenchmark.GetDeliveryMethod(config.Transmission); listener = new EventBasedNetListener(); netManager = new NetManager(listener); if (!config.Address.Contains(':')) { // For LiteNetLib 1.0 and above //netManager.IPv6Mode = IPv6Mode.Disabled; // LiteNetLib up to 0.9.4 netManager.IPv6Enabled = IPv6Mode.Disabled; } netManager.UpdateTime = Utilities.CalculateTimeout(config.ClientTickRate); netManager.UnsyncedEvents = true; netManager.DisconnectTimeout = 10000; isConnected = false; isDisposed = false; listener.PeerConnectedEvent += OnPeerConnected; listener.PeerDisconnectedEvent += OnPeerDisconnected; listener.NetworkReceiveEvent += OnNetworkReceive; listener.NetworkErrorEvent += OnNetworkError; }
public override void SendMessages(int messageCount, TransmissionType transmissionType) { var delivery = LiteNetLibBenchmark.GetDeliveryMethod(transmissionType); for (int i = 0; i < messageCount; i++) { Broadcast(MessageBuffer, delivery); } netManager.TriggerUpdate(); }