批处理程序中的“多线程”处理
2006-08-15 10:09
197 查看
大家都知道,批处理中运行的都是一步步单进程执行, 但如果进程执行比较慢,如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)
如下内容将简单举例,在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)
相关文章推荐
- 批处理程序中的“多线程”处理代码
- python 多线程处理实验
- 使用.net4.0中的并行计算来处PI值,及多线程处理比较
- CompletionService 创建多线程,并返回全部线程处理结束后的结果
- Linux 多线程应用中如何编写安全的信号处理函数
- Android多线程----异步消息处理机制之Handler详解
- JAVA多线程并发处理方式
- 安卓多线程处理(转)
- Java多线程处理大量数据
- java封装FFmpeg命令,支持原生ffmpeg全部命令,实现FFmpeg多进程处理与多线程输出控制(开启、关闭、查询),rtsp/rtmp推流、拉流
- MFC多线程处理:CSemaphore
- JAVA多线程之UncaughtExceptionHandler——处理非正常的线程中止
- 使用等待对象的方法,实现多线程的同步处理。。
- JAVA高并发处理------多线程
- JAVA多线程的问题以及处理
- 多线程程序处理内存泄漏和访问冲突问题
- spring+ActiveMQ+JMS+线程池实现简单的分布式,多线程,多任务的异步任务处理系统
- 【Android技术整理】AsyncTask实现多线程处理
- Cookies,SSL,httpclient的多线程处理,HTTP方法 (zt)
- 多线程处理多个任务