点击阅读原文
.版本 2
.支持库 sock
.支持库 ethreadnew
.支持库 EThread
.支持库 spec
.子程序 扫描线程
.参数 线程号, 整数型
.局部变量 客户, 网络客户端
.局部变量 端口, 整数型
.局部变量 线程启动状态, 逻辑型
.局部变量 许可证, 许可证
端口 = 分配端口 ()
.如果 (端口 = 0)
完成数量 = 完成数量 + 1
许可证.进入许可区 ()
' 调试输出 (“线程”, 线程号, “结束”, “扫描到最大端口”, 线程数量 - 完成数量)' _________显示线程结束
.如果真 (到整数 (线程数量 - 完成数量) = 0)
许可证.离开许可区 ()
结束 = 真
.如果真结束
许可证.离开许可区 ()
返回 ()
.否则
.如果 (客户.连接 (Ip, 端口))
' 调试输出 (“线程”, 线程号, “端口”, 端口, “开放”) ' _________显示端口开房日志
端口解释 (端口) ' 解释扫描到的端口用途
客户.断开 ()
.否则
' 调试输出 (“线程”, 线程号, “端口”, 端口, “关闭”) '_________显示端口关闭日志
.如果结束
.如果结束
线程启动状态 = 启动线程 (&扫描线程, 线程号, )
.如果 (线程启动状态)
.否则
调试输出 (“线程”, 线程号, “线程启动失败”)