session_scanner
简介
会话扫描器,提供主动关闭会话的功能,基于pkg.net_ex
组件接口
类
SessionScanner
会话扫描器 - 扫描并主动关闭连接
成员变量
| 变量名 | 类型 | 初始值 | 须初始化 | 描述 |
|---|---|---|---|---|
| name | string | nil | 可选 | 名称 |
| running | bool | false | 可选 | 运行状态 |
| scan_queue | queue | nil | 可选 | 待扫描的队列 |
| limit_count | int | -1 | 可选 | 会话数量限制(-1表示不限制) |
| scan_count | int | -1 | 可选 | 每次扫描的会话数量(<=0表示不限制) |
| counter | ScanCounter | nil | 可选 | 计数器 |
| auto_close_func | function | nil | 可选 | 会话主动关闭的处理函数 |
成员方法
| 函数原型 | 函数作用 |
|---|---|
| string desc() | 获取描述信息 |
| void add_session(object session_ob) | 添加一个会话 |
| void set_scan_count(int scan_count) | 设置每次扫描的会话数量 |
| void set_auto_close_func(function auto_close_func) | 设置自定义的连接主动关闭的处理函数 |
| void start(float interval) | 启动扫描 |
| void scan() | 执行一次扫描 |
ScanCounter
扫描计数器
成员变量
| 变量名 | 类型 | 初始值 | 须初始化 | 描述 |
|---|---|---|---|---|
| mark | int | 0 | 可选 | 起始标记 |
| count | int | 0 | 可选 | 已统计数量 |
成员方法
| 函数原型 | 函数作用 |
|---|---|
| void reset() | 重置计数器 |
| void try_reset(int mark) | 尝试重置计数器(遇到起始的标记时重置) |
| int stat(int mark) | 统计一个标记 |