summaryrefslogtreecommitdiff
path: root/app/relay/runner.js
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2018-06-05 03:43:09 +0200
committerJules Laplace <julescarbon@gmail.com>2018-06-05 03:43:09 +0200
commit4298d8d81c9bea0fb4c0f115dfa2b04ea72f0006 (patch)
tree27ca33f462123757e541b4eef080d834e18ceb1d /app/relay/runner.js
parent51d9212d97e3b326a8e9e6499bc83d27df2ef64c (diff)
kill cleanly
Diffstat (limited to 'app/relay/runner.js')
-rw-r--r--app/relay/runner.js15
1 files changed, 8 insertions, 7 deletions
diff --git a/app/relay/runner.js b/app/relay/runner.js
index 019f25c..6cb582d 100644
--- a/app/relay/runner.js
+++ b/app/relay/runner.js
@@ -46,6 +46,7 @@ function serialize_task(t){
pid: t.subprocess.pid,
}
}
+
function clear_task(is_gpu, task){
if (is_gpu) {
if (state.current_gpu_task.task && state.current_gpu_task.task.uuid === task.uuid) {
@@ -323,21 +324,21 @@ export function run_next_task(){
export function stop_task(task){
if (!task) return
- if (state.current_cpu_task.task.uuid === task.uuid) {
+ if (task === 'cpu' || state.current_cpu_task.task.uuid === task.uuid) {
terminate(state.current_cpu_task)
return { status: 'ok' }
- } else if (state.current_gpu_task.task.uuid === task.uuid) {
+ } else if (task === 'gpu' || state.current_gpu_task.task.uuid === task.uuid) {
terminate(state.current_gpu_task)
return { status: 'ok' }
}
return { error: 'no such task' }
}
-export function terminate(task){
- if (!task || !task.subprocess) {
+export function terminate(processor){
+ if (!processor || !processor.subprocess) {
return
}
- console.log('kill pid', task.subprocess.pid)
- task.preempted = true
- kill(task.subprocess.pid)
+ console.log('kill pid', processor.subprocess.pid)
+ processor.task.preempted = true
+ kill(processor.subprocess.pid)
} \ No newline at end of file