ILookupTrackingManagerState

StockSharp.Algo

Zustandsspeicher für LookupTrackingMessageAdapter. Speichert aktive Suchanfragen, Warteschlangen und Timeout-Tracking.

Eigenschaften

PreviousTime
public DateTime PreviousTime { get; set; }
value = iLookupTrackingManagerState.PreviousTime
iLookupTrackingManagerState.PreviousTime = value

Frühere Zeit für die Diff-Berechnung.

Methoden

AddLookup
public void AddLookup(long transactionId, ISubscriptionMessage subscription, TimeSpan timeout)
iLookupTrackingManagerState.AddLookup(transactionId, subscription, timeout)

Fügen Sie einen Tracked Lookup mit Timeout hinzu.

transactionId
Transaktionskennung.
subscription
Abonnementnachricht (geklont).
timeout
Timeout-Dauer.
Clear
public void Clear()
iLookupTrackingManagerState.Clear()

Alle Staaten abschaffen.

IncreaseTimeOut
public void IncreaseTimeOut(long[] subscriptionIds)
iLookupTrackingManagerState.IncreaseTimeOut(subscriptionIds)

Erhöhen Sie den Timeout für Abonnements, die Daten erhalten haben.

subscriptionIds
Abonnement-IDs, die Daten erhalten haben.
ProcessTimeouts
public IEnumerable<ValueTuple<ISubscriptionMessage, Message>> ProcessTimeouts(TimeSpan diff, long[] ignoreIds)
result = iLookupTrackingManagerState.ProcessTimeouts(diff, ignoreIds)

Verstrichene Prozesszeit und Rückgabe zeitversetzter Lookups. Entfernt zeitversetzte Einträge vom Tracking.

diff
Die Zeit ist seit der letzten Überprüfung verstrichen.
ignoreIds
Abonnement-IDs zu überspringen (sie haben gerade Daten erhalten).

Rückgabe: Timed-out Lookups.

RemoveLookup
public void RemoveLookup(long transactionId)
iLookupTrackingManagerState.RemoveLookup(transactionId)

Entfernen Sie einen Tracked Lookup.

transactionId
Transaktionskennung.
TryDequeueFromAnyType
public Message TryDequeueFromAnyType(long removingId)
result = iLookupTrackingManagerState.TryDequeueFromAnyType(removingId)

Versuchen Sie, aus einer beliebigen Warteschlange zu löschen, nachdem Sie die angegebene ID entfernt haben.

removingId
Transaktions-ID zu entfernen.

Rückgabe: Nächste Nachricht in der Warteschlange oder null.

TryDequeueNext
public Message TryDequeueNext(MessageTypes type, long removingId)
result = iLookupTrackingManagerState.TryDequeueNext(type, removingId)

Versuchen Sie, das nächste Abonnement des angegebenen Typs zu speichern, nachdem Sie die angegebene ID entfernt haben.

type
Art der Meldung.
removingId
Transaktions-ID zum Entfernen aus der Warteschlange.

Rückgabe: Nächste Nachricht in der Warteschlange oder null.

TryEnqueue
public bool TryEnqueue(MessageTypes type, long transactionId, ISubscriptionMessage message)
result = iLookupTrackingManagerState.TryEnqueue(type, transactionId, message)

Versuchen Sie, ein Abonnement in die Warteschlange pro Typ einzureihen.

type
Art der Meldung.
transactionId
Transaktionskennung.
message
Abonnementnachricht (geklont).

Rückgabe: True, wenn das Abonnement in der Warteschlange stand (nicht das erste in der Warteschlange), false, wenn es sofort fortgesetzt werden sollte.

TryGetAndRemoveLookup
public bool TryGetAndRemoveLookup(long transactionId, ISubscriptionMessage subscription)
result = iLookupTrackingManagerState.TryGetAndRemoveLookup(transactionId, subscription)

Versuchen Sie, einen verfolgten Lookup zu erhalten und zu entfernen.

transactionId
Transaktionskennung.
subscription
Gefundenes Abonnement oder null.

Rückgabe: Wahr, wenn gefunden und entfernt.