@minto-ai/xunfei-tts
Version:
借助“讯飞在线语音合成API”实现浏览器端“文本转语音
69 lines (68 loc) • 2.08 kB
TypeScript
import { SerialTaskItem, SerialHandlerStatus } from '../types';
import { BaseHandler } from '../core';
/**
* 串行任务处理器 - 按顺序处理队列中的任务
*
* 特点:
* - 使用先进先出(FIFO)队列管理待处理任务
* - 支持任务执行前的自定义条件检查
* - 实现完整的生命周期管理(激活、待机、执行、成功、销毁)
* - 可与其他处理器组成处理链
*
* 使用场景:
* - 需要顺序执行的任务处理
* - 资源有限需要排队执行的场景
* - 需要严格控制执行顺序的业务流程
*/
declare abstract class SerialHandler<O, R> extends BaseHandler<O, R> {
/**
* 待处理任务队列
*/
protected taskQueue: Array<SerialTaskItem<O>>;
/**
* 当前处理器状态
*/
handlerStatus: SerialHandlerStatus;
/**
* 获取待处理任务数量
*/
get taskQueueLength(): number;
constructor();
/**
* 检查任务执行条件
* 子类可重写此方法,实现自定义的任务执行前置条件检查
*
* @returns {boolean} - 当满足执行条件时返回 true,否则返回 false
*/
executePreCheck(): boolean;
/**
* 触发处理器激活行为(空闲状态 => 激活状态)
*/
triggerHandlerActive(): void;
/**
* 触发处理器待机行为(激活状态 => 待执行状态 执行状态 => 待执行状态)
*/
triggerHandlerPending(): void;
/**
* 触发处理器执行行为(激活状态 => 执行状态)
*/
triggerHandlerExecute(): void;
/**
* 触发处理器成功行为(执行状态 => 成功状态)
*/
triggerHandlerCompleted(): void;
/**
* 触发处理器销毁行为(待机状态 => 销毁状态)
*/
triggerHandlerFinish(): void;
/**
* 触发应用被销毁行为
*/
triggerAppFinish(): void;
/**
* 任务完成后的回调函数。
*/
taskCompletedCallback(): void;
handle(original: O | null): void;
}
export default SerialHandler;