ClientSbeSession

StockSharp.Server.Sbe

SBEクライアントセッション — 接続されたクライアントごとに1つ。

継承元: SbeSession

実装: IMessageListenerSession, ILogReceiver, ILogSource, IDisposable

コンストラクター

ClientSbeSession
public ClientSbeSession(string version, string language, Stream clientStream, TcpClient client, SbeSession serverSession, string authorizationToken, ISessionTransactionIdStorage transactionIdStorage, bool isDemo, int maxPendingMessages)
clientSbeSession = ClientSbeSession(version, language, clientStream, client, serverSession, authorizationToken, transactionIdStorage, isDemo, maxPendingMessages)

ClientSbeSession の新規インスタンスを初期化します。

プロパティ

AuthorizationToken
public string AuthorizationToken { get; }
value = clientSbeSession.AuthorizationToken

成功のログイン後に割り当てられた承認トークン。

BytesReceived
public long BytesReceived { get; set; }
value = clientSbeSession.BytesReceived
clientSbeSession.BytesReceived = value

受け取られたバイト数。

BytesSent
public long BytesSent { get; set; }
value = clientSbeSession.BytesSent
clientSbeSession.BytesSent = value

送信されたバイト数。

ErrorCount
public int ErrorCount { get; set; }
value = clientSbeSession.ErrorCount
clientSbeSession.ErrorCount = value

エラー数。

IsConnected
public override bool IsConnected { get; }
value = clientSbeSession.IsConnected

接続状況を取得します。

IsDemo
public bool IsDemo { get; }
value = clientSbeSession.IsDemo

デモセッションであっても。

Language
public string Language { get; }
value = clientSbeSession.Language

クライアント言語コード。

OutgoingQueueCount
public int OutgoingQueueCount { get; }
value = clientSbeSession.OutgoingQueueCount

発信メッセージキューの現在のサイズ(チャネルがカウントを割くない場合-1)。

RemoteEndPoint
public EndPoint RemoteEndPoint { get; }
value = clientSbeSession.RemoteEndPoint

接続されたクライアントのリモートエンドポイント。

Serializer
public SbeRecordSerializer Serializer { get; }
value = clientSbeSession.Serializer

セッションのSBEシリアライズ

ServerSession
public SbeSession ServerSession { get; }
value = clientSbeSession.ServerSession

サーバ側セッションの設定

TotalErrorCount
public int TotalErrorCount { get; set; }
value = clientSbeSession.TotalErrorCount
clientSbeSession.TotalErrorCount = value

エラーカウントの合計。

TransactionIdStorage
public ISessionTransactionIdStorage TransactionIdStorage { get; }
value = clientSbeSession.TransactionIdStorage
UpdatedTime
public DateTime UpdatedTime { get; }
value = clientSbeSession.UpdatedTime

受信したメッセージ(ハートビートまたはデータ)のタイムスタンプ。

Version
public string Version { get; }
value = clientSbeSession.Version

クライアントアプリケーションバージョン。

WriteBuffer
public byte[] WriteBuffer { get; }
value = clientSbeSession.WriteBuffer

SBE のシリアライズのためのセッション書き込みバッファ。メッセージのアウトゴングは別々のタスクで同時処理されるため、各セッションは独自のバッファを必要とします。バッファは、要求に応じて成長します(Int32) 参照)。そのため、大きなフレームは落ちません。

メソッド

DisposeManaged
protected override void DisposeManaged()
clientSbeSession.DisposeManaged()

リソースのリリース

EnqueueWork
public bool EnqueueWork(ServerSubscription subscription, string requestId, Func<ClientSbeSession, string, CancellationToken, ValueTask<bool>> handler)
result = clientSbeSession.EnqueueWork(subscription, requestId, handler)

処理のためのシリアライズ作業項目を入力します。 キューがいっぱいであれば false を返します(クライアントのバックプレッシャー)。

EnsureWriteBuffer
public void EnsureWriteBuffer(int minSize)
clientSbeSession.EnsureWriteBuffer(minSize)

書き込みバッファが最小バイト、現在のバッファが小さいときに(倍数容量) を割り当てることを確認します。

minSize
バイト単位で最小限のバッファサイズ。
IncreaseBytesSent
public override void IncreaseBytesSent(int count)
clientSbeSession.IncreaseBytesSent(count)

代表取締役社長 佐藤 浩一

count
値。
IncreaseErrorCount
public override void IncreaseErrorCount()
clientSbeSession.IncreaseErrorCount()

代表取締役社長 佐藤 浩一

Init
public Task Init(SbeServerSettings serverSettings, Action<ClientSbeSession> logout, CancellationToken cancellationToken)
result = clientSbeSession.Init(serverSettings, logout, cancellationToken)

発信メッセージ処理ループを開始します。

Ping
public void Ping()
clientSbeSession.Ping()

アクティブタイムスタンプを今すぐ更新します。

ResetErrorCount
public override void ResetErrorCount()
clientSbeSession.ResetErrorCount()

代表取締役社長 佐藤 浩一

WriteFramedMessageAsync
public ValueTask WriteFramedMessageAsync(ReadOnlyMemory<byte> payload, CancellationToken cancellationToken)
result = clientSbeSession.WriteFramedMessageAsync(payload, cancellationToken)

SBE はクライアントストリームにメッセージをフレーム化しました。 [4 バイトの長さのプレフィックス (uint32 LE)][SBE メッセージのペイロード]