Windows 批处理文件和多处理器

标签 windows multithreading batch-file multiprocessing

我有一个 Windows 批处理文件可以多次执行相同的操作,但对多个文件除外。有什么办法可以告诉计算机使用不同的处理器内核来加快进程?否则,由于一直使用同一个处理器,因此需要更长的时间。

最佳答案

在 Windows 批处理文件中,您可以通过管道或 start/b 使用多线程。

像这样的东西应该可以工作

@echo off
setlocal EnableDelayedExpansion
set "file1=%~1"

:startExtraThread
if NOT "%~2"=="" (
  start "Thread for %~2" /b "cmd /c %~f0 %~2"
  shift
  goto :startExtraThread
)

do my job with file1

关于Windows 批处理文件和多处理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32410003/

相关文章:

windows - 命令提示符 - 输出结果而不覆盖目标文件

c# - 从 Windows 服务创建文件/文件夹时的最佳实践

multithreading - ThreadPool,QueueUserWorkItem和关机时死锁

batch-file - “ls”不被识别为内部或外部命令、可操作程序或批处理文件

同步调用中的 Android runOnUiThread()

linux - 等待线程如何知道共享资源已被另一个线程解锁?

batch-file - 忽略批处理文件中的百分号

c++ - 与正在运行的 Windows 服务通信

c++ - 这是 Windows 文件 API 的正确用法吗? (多个重叠请求)

java - 使用 javaw.exe 启动应用程序时不执行关闭 Hook