窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | | 变量名 | 类 型 | 数组 | 备 注 | ex | EXCEL程序对象 | | ex1 | EXCEL程序对象 | | 线程池 | 鱼刺类_线程池Ex | | 单元格 | 单元格对象 | | 符合女性 | 文本型 | 0 |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 文件名 | 文本型 | | | i | 整数型 | | | n | 整数型 | | | 总任务数 | 整数型 | | | 当前任务数 | 整数型 | | | 空闲数 | 整数型 | | | 并发线程 | 整数型 | | |
文件名 = 取运行目录 () + “\1.xlsx”ex. 创建 (真)ex. 打开文件 (文件名, , , , )单元格. 置程序 (ex )总任务数 = 单元格. 取已用行数 ()线程_启动 (&提取信息, 1, )并发线程 = 10 当前任务数 = 总任务数 n = 0 如果真 (取反 (线程池. 创建 (并发线程, 并发线程, )) ) 信息框 (“线程池创建失败!”, 64, , ) 返回 () 判断循环首 (n < 总任务数 ) 空闲数 = 线程池. 取_空闲线程数 () 如果真 (空闲数 > 0 )  当前任务数 = 总任务数 - n   如果真 (当前任务数 > 空闲数 )   当前任务数 = 空闲数   计次循环首 (当前任务数, )   n = n + 1    线程池. 投递任务 (&提取信息, n )  计次循环尾 () 线程池.等待任务动态 () 判断循环尾 () 判断循环首 (线程池. 取_是否空闲 () = 假) 如果真 (线程池. 取_状态 () ≠ #线程池_正在工作 ) 跳出循环 () 线程池.等待任务动态 (100) 判断循环尾 ()线程池. 销毁 ()线程_初始化COM库 ()调试输出 (单元格. 取纯文本 (1, 2, 索引 )) 线程_取消COM库 ()ex. 创建 ()ex1. 创建 ()
|