Class SynchronousImmediateMessageQueue
- Namespace
- Kook.Net.Queue.SynchronousImmediate
- Assembly
- Kook.Net.Core.dll
表示一个同步处理消息队列。
public class SynchronousImmediateMessageQueue : BaseMessageQueue, IMessageQueue
- Inheritance
-
SynchronousImmediateMessageQueue
- Implements
- Inherited Members
Remarks
此消息队列会在接收到网关事件后调用
EnqueueAsync(JsonElement, int, CancellationToken)
时立即使用构造函数中传入的 eventHandler
委托同步进行处理,处理完成后,该方法才会返回。
Constructors
SynchronousImmediateMessageQueue(Func<JsonElement, Task>)
初始化一个 BaseMessageQueue 类的新实例。
public SynchronousImmediateMessageQueue(Func<JsonElement, Task> eventHandler)
Parameters
eventHandler
Func<JsonElement, Task>用于处理消息的事件处理程序。
Methods
EnqueueAsync(JsonElement, int, CancellationToken)
将网关消息添加到队列中。
public override Task EnqueueAsync(JsonElement payload, int sequence, CancellationToken cancellationToken = default)
Parameters
payload
JsonElement网关消息的有效负载。
sequence
int网关消息的序号。
cancellationToken
CancellationToken用于取消该操作的取消令牌。
Returns
- Task
表示一个异步入队操作的任务。
StartAsync(CancellationToken)
启动消息队列的处理。
public override Task StartAsync(CancellationToken cancellationToken = default)
Parameters
cancellationToken
CancellationToken用于取消该操作的取消令牌。
Returns
- Task
表示一个异步启动操作的任务。
StopAsync(CancellationToken)
停止消息队列的处理。
public override Task StopAsync(CancellationToken cancellationToken = default)
Parameters
cancellationToken
CancellationToken用于取消该操作的取消令牌。
Returns
- Task
表示一个异步停止操作的任务。