refactor: 批量 Deep Scan 并发数改为 2,优化排队显示
修改: - maxConcurrent 从 3 改为 2 - 开始时显示:"Starting: 2 immediate, 3 queuing..." - 处理时显示:"Processing 1/5" 或 "Processing 3/5 (1 queuing)..." - 更清晰的队列状态显示
This commit is contained in:
@@ -1887,14 +1887,16 @@ async function batchDeepScan() {
|
||||
if (!confirm(`Deep scan ${filesToProcess.length} files?\n\nThis will process all selected files with default settings.`)) return
|
||||
|
||||
batchProcessing.value = true
|
||||
actionMsg.value = `Starting deep scan for ${filesToProcess.length} files...`
|
||||
|
||||
const maxConcurrent = 3
|
||||
const maxConcurrent = 2
|
||||
const limit = pLimit(maxConcurrent)
|
||||
const immediateCount = Math.min(filesToProcess.length, maxConcurrent)
|
||||
const queueTotal = Math.max(0, filesToProcess.length - maxConcurrent)
|
||||
|
||||
actionMsg.value = `Starting: ${immediateCount} immediate, ${queueTotal} queuing...`
|
||||
|
||||
let successCount = 0
|
||||
let failCount = 0
|
||||
let queueCount = 0
|
||||
|
||||
const tasks = filesToProcess.map((f, index) => {
|
||||
return limit(async () => {
|
||||
@@ -1905,9 +1907,10 @@ async function batchDeepScan() {
|
||||
}
|
||||
|
||||
const position = index + 1
|
||||
if (position > maxConcurrent) {
|
||||
queueCount++
|
||||
actionMsg.value = `Processing ${successCount + 1}/${filesToProcess.length} (${queueCount} in queue)...`
|
||||
const queuePosition = position - maxConcurrent
|
||||
|
||||
if (queuePosition > 0) {
|
||||
actionMsg.value = `Processing ${successCount + 1}/${filesToProcess.length} (${queuePosition} queuing)...`
|
||||
} else {
|
||||
actionMsg.value = `Processing ${position}/${filesToProcess.length}...`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user