コード例 #1
0
    def start(self):
        # return # DEBUG
        self.init_jobs()
        QueryLog.print_init_jobs(jobs=self.jobs)
        stay_second(1)

        while True:
            app_available_check()
            if config.QUERY_JOB_THREAD_ENABLED:  # 多线程
                create_thread_and_run(jobs=self.jobs, callback_name='run')
            else:
                for job in self.jobs:
                    job.run()
            if Const.IS_TEST: return
コード例 #2
0
    def refresh_jobs(self):
        """
        更新任务
        :return:
        """
        allow_jobs = []
        for job in self.query_jobs:
            id = md5(job)
            job_ins = objects_find_object_by_key_value(self.jobs, 'id', id)  # [1 ,2]
            if not job_ins:
                job_ins = self.init_job(job)
                if Config().QUERY_JOB_THREAD_ENABLED:  # 多线程重新添加
                    create_thread_and_run(jobs=job_ins, callback_name='run', wait=Const.IS_TEST)
            allow_jobs.append(job_ins)

        for job in self.jobs:  # 退出已删除 Job
            if job not in allow_jobs: job.destroy()

        QueryLog.print_init_jobs(jobs=self.jobs)
コード例 #3
0
 def init_jobs(self):
     for job in self.query_jobs:
         self.init_job(job)
     QueryLog.print_init_jobs(jobs=self.jobs)