Update task.js

This commit is contained in:
Namhyeon Go 2021-07-05 22:10:25 +09:00 committed by GitHub
parent bdb5141bf8
commit 5849a79e30
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -5,13 +5,13 @@
/* // example:
* // var TASK = require("lib/task");
* // var taskQueue = TASK.createTaskQueue();
* // TASK.putTask(queue, function() { console.log('123'); sleep(100); }, [1, 2, 3])
* // .then(TASK.createTask(function() { console.log('456'); sleep(200); }, [4, 5, 6]))
* // .then(TASK.createTask(function() { console.log('789'); sleep(300); }, [7, 8, 9]))
* // TASK.putTask(queue, TASK.createTask(function() { console.log(a + b + c); sleep(100); }, [1, 2, 3]))
* // .then(TASK.createTask(function(a, b, c) { console.log(a + b + c); sleep(200); }, [4, 5, 6]))
* // .then(TASK.createTask(function(a, b, c) { console.log(a + b + c); sleep(300); }, [7, 8, 9]))
* // ;
* // TASK.putTask(queue, function() { console.log('321'); sleep(100); }, [3, 2, 1])
* // .then(TASK.createTask(function() { console.log('654'); sleep(200); }, [6, 5, 4]))
* // .then(TASK.createTask(function() { TASK.stop(); console.log('987'); sleep(300); }, [9, 8, 7]))
* // TASK.putTask(queue, TASK.createTask(function() { console.log(a + b + c); sleep(100); }, [3, 2, 1])
* // .then(TASK.createTask(function(a, b, c) { console.log(a + b + c); sleep(200); }, [6, 5, 4]))
* // .then(TASK.createTask(function(a, b, c) { TASK.stop(); console.log(a + b + c); sleep(300); }, [9, 8, 7]))
* // ;
* // taskQueue.run();
*/
@ -61,7 +61,6 @@ var TaskQueue = function() {
*/
task = this.queue[0];
this.queue = this.queue.slice(1);
}
} catch(e) {
console.error("TaskQueue.get: " + e.message);
@ -80,6 +79,8 @@ var TaskQueue = function() {
result = task.f.apply(null, task.params);
} catch (e) {
console.error("Task exception: " + e.message);
console.error("task.f: " + typeof(task.f));
console.error("task.params: " + typeof(task.params));
}
if (task.nextTask != null) {
@ -126,10 +127,10 @@ exports.createTask = function(f, params) {
}
};
exports.putTask = function(q, f, params) {
exports.putTask = function(q, task) {
try {
if (q instanceof TaskQueue) {
return q.put(new Task(f, params));
return q.put(task);
}
} catch(e) {
console.error("putTask exception: " + e.message);