我正在Weblogic应用服务器上开发一个应用程序,在我的应用程序中,我需要创建一个新进程(python)。
此进程有2个输出流(std + err),应该由我的应用程序读取,因为如果这些流的缓冲区已满,操作系统可以冻结进程。
问题是,我想异步读取这些流,因为我并不真正关心进程输出,这意味着我需要2个新线程来完成这项工作(我不需要等待它们停止)。
我知道不建议在应用服务器中创建新线程,我想知道处理这种情况的最佳方法是什么。
答案 0 :(得分:1)
您可以使用Quartz Scheduler
执行此操作您可以配置一个将使用Weblogic应用启动并随之运行的侦听器。
如果没有,它可以根据某些触发器(例如一天中的某个时间或一周中的某天)运行,并且可以配置为无限期运行或在特定时间段内运行
Quartz管理它自己配置的线程池,它不会干扰Weblogic的线程。