脚本让Microsoft Deployment Toolkit (MDT)刷机流程在并发数达到5台时 暂停 ,并且每30秒检查一次是否有空余名额。
工作流程
1. 并发检查机制
通过读取日志文件中"1"的数量来判断当前并发数
当并发数达到5台时,新的刷机请求会被暂停
每30秒检查一次是否有空余名额
2. 等待与重试逻辑
超过并发限制时:暂停30秒 → 重新检查 → 仍超限则继续等待
循环执行直到有空余名额(并发数<5)
获得名额后:在日志文件追加"1" → 继续刷机流程
3. 日志记录格式
每个"1"代表一个活跃的刷机会话
格式:1:yyyy-MM-dd HH:mm:ss(使用冒号分隔符)
便于后续解析和时间戳管理
4. 自动清理机制
Clear-TimeoutSessions函数负责清理超时会话
自动清理超过60分钟的会话记录
在每次尝试获取新名额前执行清理
防止因异常退出导致的"僵尸"会话占用名额
优势特点
资源保护:避免过多设备同时刷机造成服务器与网络负载过高
自动恢复:通过超时清理机制处理异常情况
实时监控:30秒间隔的动态检查确保及时响应
步骤头部
检测和删除长时间没有动作的“1”脚本
Run Command Line
powershell.exe -ExecutionPolicy Bypass -File "%SCRIPTROOT%\CheckAndAdd.ps1"
CheckAndAdd.ps1
$LogFile