mirror of
https://github.com/easydiffusion/easydiffusion.git
synced 2025-05-11 11:44:35 +02:00
Stop batched tasks properly
This commit is contained in:
parent
edb4b9a82e
commit
32bafd8b01
@ -116,6 +116,7 @@ let modifiers = []
|
|||||||
let lastPromptUsed = ''
|
let lastPromptUsed = ''
|
||||||
|
|
||||||
let taskQueue = []
|
let taskQueue = []
|
||||||
|
let currentTask = null
|
||||||
|
|
||||||
const modifierThumbnailPath = 'media/modifier-thumbnails';
|
const modifierThumbnailPath = 'media/modifier-thumbnails';
|
||||||
const activeCardClass = 'modifier-card-active';
|
const activeCardClass = 'modifier-card-active';
|
||||||
@ -528,6 +529,8 @@ async function checkTasks() {
|
|||||||
setTimeout(checkTasks, 500)
|
setTimeout(checkTasks, 500)
|
||||||
stopImageBtn.style.display = 'none'
|
stopImageBtn.style.display = 'none'
|
||||||
makeImageBtn.innerHTML = 'Make Image'
|
makeImageBtn.innerHTML = 'Make Image'
|
||||||
|
|
||||||
|
currentTask = null
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -539,6 +542,7 @@ async function checkTasks() {
|
|||||||
previewTools.style.display = 'block'
|
previewTools.style.display = 'block'
|
||||||
|
|
||||||
let task = taskQueue.pop()
|
let task = taskQueue.pop()
|
||||||
|
currentTask = task
|
||||||
|
|
||||||
let time = new Date().getTime()
|
let time = new Date().getTime()
|
||||||
|
|
||||||
@ -556,6 +560,10 @@ async function checkTasks() {
|
|||||||
let success = await doMakeImage(task)
|
let success = await doMakeImage(task)
|
||||||
task.batchesDone++
|
task.batchesDone++
|
||||||
|
|
||||||
|
if (!task.isProcessing) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
if (success) {
|
if (success) {
|
||||||
successCount++
|
successCount++
|
||||||
}
|
}
|
||||||
@ -572,12 +580,16 @@ async function checkTasks() {
|
|||||||
task.outputMsg.innerText = 'Processed ' + task.numOutputsTotal + ' images in ' + time + ' seconds'
|
task.outputMsg.innerText = 'Processed ' + task.numOutputsTotal + ' images in ' + time + ' seconds'
|
||||||
|
|
||||||
// setStatus('request', 'done', 'success')
|
// setStatus('request', 'done', 'success')
|
||||||
|
} else {
|
||||||
|
task.outputMsg.innerText = 'Task ended after ' + time + ' seconds'
|
||||||
}
|
}
|
||||||
|
|
||||||
if (randomSeedField.checked) {
|
if (randomSeedField.checked) {
|
||||||
seedField.value = task.seed
|
seedField.value = task.seed
|
||||||
}
|
}
|
||||||
|
|
||||||
|
currentTask = null
|
||||||
|
|
||||||
setTimeout(checkTasks, 10)
|
setTimeout(checkTasks, 10)
|
||||||
}
|
}
|
||||||
setTimeout(checkTasks, 0)
|
setTimeout(checkTasks, 0)
|
||||||
@ -715,6 +727,7 @@ async function makeImage() {
|
|||||||
|
|
||||||
task['stopTask'].addEventListener('click', async function() {
|
task['stopTask'].addEventListener('click', async function() {
|
||||||
if (task['isProcessing']) {
|
if (task['isProcessing']) {
|
||||||
|
task.isProcessing = false
|
||||||
try {
|
try {
|
||||||
let res = await fetch('/image/stop')
|
let res = await fetch('/image/stop')
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
@ -821,6 +834,10 @@ async function stopAllTasks() {
|
|||||||
})
|
})
|
||||||
taskQueue = []
|
taskQueue = []
|
||||||
|
|
||||||
|
if (currentTask !== null) {
|
||||||
|
currentTask.isProcessing = false
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
let res = await fetch('/image/stop')
|
let res = await fetch('/image/stop')
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
Loading…
Reference in New Issue
Block a user