NetworkClient
StockSharp.Fix.Native
Abstrakte Basisklasse für UDP-Netzwerkclients.
Erbt von: BaseLogReceiver
Implementiert: INetworkClient, ILogReceiver, ILogSource, IDisposable, IPacketProcessor
Konstruktoren
NetworkClient
protected NetworkClient(IUdpDialect dialect, string name, MulticastSourceAddress address, Func<TNetworkClient, IMemoryOwner<byte>, List<Message>, bool> processMessage, IPacketReceiverFactory receiverFactory)
networkClient = NetworkClient(dialect, name, address, processMessage, receiverFactory)
Initialisiert eine neue Instanz der NetworkClient Klasse.
- dialect
- Der UDP Dialekt.
- name
- Der Name des Kunden.
- address
- Die Multicast-Quelladresse.
- processMessage
- Funktion zur Verarbeitung empfangener Nachrichten.
- receiverFactory
- IPacketReceiverFactory
Eigenschaften
Dialect
public IUdpDialect Dialect { get; }
value = networkClient.Dialect
Bekommt den UDP-Dialekt, der mit diesem Client verknüpft ist.
FullMode
public PacketQueueFullModes FullMode { get; set; }
value = networkClient.FullMode
networkClient.FullMode = value
Verhalten, wenn die Paketwarteschlange voll ist.
MaxIncomingQueueSize
public int MaxIncomingQueueSize { get; }
value = networkClient.MaxIncomingQueueSize
Maximale gepufferte eingehende UDP-Pakete pro Feed, bevor neue Pakete fallen gelassen werden.
MaxUdpDatagramSize
public int MaxUdpDatagramSize { get; }
value = networkClient.MaxUdpDatagramSize
Maximale UDP-Datagrammgröße.
Methoden
AllocatePacket
public IMemoryOwner<byte> AllocatePacket(int size)
result = networkClient.AllocatePacket(size)
Um ein Paket der angegebenen Größe zuzuordnen.
- size
- Die Größe des zuzuteilenden Pakets.
Rückgabe: Das Paket.
DisposeManaged
protected override void DisposeManaged()
networkClient.DisposeManaged()
Ressourcen freigeben.
DisposePacket
public void DisposePacket(IMemoryOwner<byte> packet, string reason)
networkClient.DisposePacket(packet, reason)
Entsorgt das Paket mit dem angegebenen Grund.
- packet
- Das Paket.
- reason
- Der angegebene Grund.
ErrorHandler
public void ErrorHandler(Exception e, int numErrors, bool isFatal)
networkClient.ErrorHandler(e, numErrors, isFatal)
Behandelt Fehler, die während der Paketverarbeitung auftreten.
- e
- Die Ausnahme ist aufgetreten.
- numErrors
- Der Fehler zählt.
- isFatal
- Gibt an, ob der Fehler fatal ist.
ProcessNewPacket
public ValueTask<bool> ProcessNewPacket(IMemoryOwner<byte> packet, int length, CancellationToken cancellationToken)
result = networkClient.ProcessNewPacket(packet, length, cancellationToken)