码迷,mamicode.com
首页 > 其他好文 > 详细

分布式作业

时间:2015-10-30 18:37:12      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:

首先添加作业队列方法

function SubmitTaskList() {
    var obj = {};
    var taskList = [];
    var index = 0;
    obj.AddTask = function (task) { if (task) taskList.push(task); }
    obj.Post = function () {
        if (index < taskList.length) {
            var task = taskList[index++];
            if (!task.Check()) {
                return;
            }
            task.onSuccess = function () { obj.Post() };
            task.Post();
        }
        else
            obj.Rest();
    }
    obj.Check = function () {
        for (var i = 0; i < taskList.length; i++) {
            task = taskList[0];
            if (!task.Check()) {
                return false;
            }
        }
        return true;
    }
    obj.Rest = function () { index = 0; }
    return obj;
}

执行对象

function SubmitTask(checkFun, postFun) {
    var obj = {};
    obj.Check = checkFun;
    obj.Post = function () {
        postFun(obj.onSuccess);
    }
    return obj;
}

var taskList = SubmitTaskList(); 声明方法对象

taskList.AddTask(SubmitTask(Submit_Check, submitContactDifferInfo));添加执行队列

taskList.AddTask(SubmitTask(Submit_Check, function (onSuccess) {
                alert("保存成功");
                if (onSuccess) {
                    onSuccess();
                }
            }));

taskList.Post();

分布式作业

标签:

原文地址:http://www.cnblogs.com/eric-gms/p/4923870.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!