当前位置: 首页 > 图文教程 > 脚本技术 > DOS/BAT > 批处理程序中的“多线程”处理代码

DOS/BAT
硬盘“逻辑锁”的解决办法
DOS多媒体播放器MPXPLAY的命令行参数大全
内存虚拟盘软件XMSDSK的使用教程
DUSE让DOS支持USB驱动器
如何在WinNT/2K/XP下安装纯DOS的方法
MSDOS.SYS文件的参数设置方法
ANSI.SYS程序的使用方法
DOS命令之ECHO命令的使用
备份硬盘引导记录的方法
DEBUG命令详解教程
细说FAT16与FAT32区别
DOS下常用的相关网络命令总结
DOS下对注册表的编程的方法
FTP命令基本使用方法
零磁道受损的软盘格式化小技巧
dos利用wget.exe让杀毒软件升级更自动化
wget各种选项分类列表与下载
设置高级NTFS权限的工具 XCACLS.vbs
ping命令的小秘密
at命令的详细用法

DOS/BAT 中的 批处理程序中的“多线程”处理代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 130 ::
收藏到网摘: n/a

大家都知道,批处理中运行的都是一步步单进程执行, 但如果进程执行比较慢,如PING一个不通的IP地址,那就会大大影响批处理程序的执行效率。
  如下内容将简单举例,在WINDOWS下使用批处理做多进程并发,以达到“多线程”的效果。
  例:需要PING 192.168.0.1到192.168.0.254的所有IP地址,并将是否能PING通的结果输出到log.txt
  实现如下:
rem 主程序.bat,只需一行代码,调用checkip.bat,经测试,CPU2.6G MEM1G可并发40个左右的进程
for /l %%i in (1,1,254) do (start /min cmd /c checkip.bat 192.168.0.%%i)

rem checkip.bat内容如下:
ping %1 -n 1
if %errorlevel%==0 (echo %1 alive>>log.txt) else (echo %1 dead>>log.txt)