PDFMathTranslate
PDFMathTranslate copied to clipboard
在2.0版GUI中添加任务执行时间限制功能
在什么场景下,需要你请求的功能?
当多用户同时使用PDF翻译工具时,出现了以下问题:
- 某些特别大的PDF文件或格式复杂的文档会导致翻译任务执行时间过长
- 一个长时间运行的翻译任务会阻塞队列,使后面的用户请求被迫等待
- 偶尔会出现卡死情况,一个任务无限期运行但没有进展,需要手动重启服务
这种情况在公共部署环境中尤为突出,多用户共享同一系统资源时,单个用户的长时间任务会影响整体服务质量。
解决方案
建议在GUI界面中添加任务执行时间限制功能:
- 在界面上添加一个可配置的"最大执行时间"选项,允许用户或管理员设置翻译任务的超时时间
- 当任务执行时间超过设定限制时,自动中断该任务并释放资源
- 在后端实现处理中断的清理机制,确保资源被正确释放
实现方式可以结合Gradio的队列参数和Python的超时处理机制。
其他内容
No response
谢谢,很好的建议。 但是处理有限级应该不会很高,但确实是一个需要解决的问题。 : )
https://github.com/awwaawwa/PDFMathTranslate/blob/116ba33c52d7bb2b266c55acff0f7155426a0d56/pdf2zh/high_level.py#L227
我目前只实现了任意两个进度消息之间超时的机制,没有实现整个任务的timeout。
低优先级一位,社区有人想写的话可以PR