PFN_WSK_SEND_BACKLOG_EVENT回调函数 (wsk.h)

当理想发送积压工作大小更改时,WskSendBacklogEvent 事件回调函数通知 WSK 应用程序。

语法

PFN_WSK_SEND_BACKLOG_EVENT PfnWskSendBacklogEvent;

NTSTATUS PfnWskSendBacklogEvent(
  [in, optional] PVOID SocketContext,
  [in]           SIZE_T IdealBacklogSize
)
{...}

参数

[in, optional] SocketContext

指向面向连接的套接字的套接字上下文的指针,该套接字通知 WSK 应用程序对其理想发送积压工作大小的更改。 WSK 应用程序通过以下方式之一向 WSK 子系统提供了此指针:

  • 它调用 WskSocket 函数来创建套接字。
  • 它调用 WskSocketConnect 函数来创建套接字。
  • 它调用 WskAccept 函数以接受套接字作为传入连接。
  • WskAcceptEvent 事件回调函数被调用以接受套接字作为传入连接。

[in] IdealBacklogSize

一个变量,其中包含新的理想发送积压工作大小。

返回值

WSK 应用程序的 WskSendBacklogEvent 事件回调函数必须始终返回STATUS_SUCCESS。

言论

仅当以前使用 SO_WSK_EVENT_CALLBACK 套接字选项启用事件回调函数时,WSK 子系统才会调用 WSK 应用程序的 WskSendBacklogEvent 事件回调函数。当理想的发送积压工作大小更改时,才对面向连接的套接字进行配置。 有关启用套接字的事件回调函数的详细信息,请参阅 启用和禁用事件回调函数

面向连接的套接字的理想发送积压工作大小是需要保持未完成的最佳发送数据量(即传递给 WSK 子系统但尚未完成),以始终使套接字的数据流保持完整。 WSK 应用程序可以使用此大小以增量方式探测和锁定要基于基础连接的流控制状态发送的数据缓冲区。

WSK 应用程序可以随时通过调用 WskControlSocket 函数来获取面向连接的套接字的当前理想积压工作大小。

WSK 子系统在 IRQL = DISPATCH_LEVEL 调用 WSK 应用程序的 < 事件回调函数。

WSK 应用程序的 WskSendBacklogEvent 事件回调函数不得等待 WSK 完成或事件回调函数上下文中的其他 WSK 请求的完成。 回调可以启动其他 WSK 请求(假设它在DISPATCH_LEVEL花费的时间不太多),但即使在 IRQL = PASSIVE_LEVEL调用回调,它也不能等待完成。

要求

要求 价值
最低支持的客户端 在 Windows Vista 和更高版本的 Windows作系统中可用。
目标平台 窗户
标头 wsk.h (包括 Wsk.h)
IRQL <= DISPATCH_LEVEL

另请参阅

WSK_CLIENT_CONNECTION_DISPATCH

WskAccept

WskAcceptEvent

WskControlSocket

WskSend

WskSocket

WskSocketConnect