diff --git a/nonebot_bison/scheduler/scheduler.py b/nonebot_bison/scheduler/scheduler.py index cb3d2f2..cf36a31 100644 --- a/nonebot_bison/scheduler/scheduler.py +++ b/nonebot_bison/scheduler/scheduler.py @@ -43,7 +43,7 @@ class Scheduler: self.scheduler_config_obj = self.scheduler_config() self.schedulable_list = [] - self.batch_platform_name_targets_cache: dict[str, list[Target]] = defaultdict(list) + self.batch_platform_name_targets_cache = defaultdict(list) for platform_name, target, use_batch in schedulables: if use_batch: self.batch_platform_name_targets_cache[platform_name].append(target) @@ -130,12 +130,13 @@ class Scheduler: def insert_new_schedulable(self, platform_name: str, target: Target): self.pre_weight_val += 1000 - self.schedulable_list.append(Schedulable(platform_name, target, 1000)) + new_schedulable = Schedulable(platform_name, target, 1000, platform_manager[platform_name].use_batch) - if platform_manager[platform_name].use_batch: + if new_schedulable.use_batch: self.batch_platform_name_targets_cache[platform_name].append(target) self._refresh_batch_api_target_cache() + self.schedulable_list.append(new_schedulable) logger.info(f"insert [{platform_name}]{target} to Schduler({self.scheduler_config.name})") def delete_schedulable(self, platform_name, target: Target):