【发布时间】:2018-02-27 18:35:39
【问题描述】:
我想创建一个 java servlet,它在服务器中运行一个 .exe 应用程序,但作为一个异步进程,并向客户端返回一个哈希或令牌以标识该进程,以便客户端稍后可以询问该进程是否已完成。
例如:
- 用户在 Web 浏览器中写入类似:http://server:8080/videomanager?action=process
- servlet 收到请求并执行 .exe 应用程序,但它不会等待它完成,它会立即使用 token/hash=12312312ddsadad31231 响应用户
- 用户在其网络浏览器中收到此令牌
- 然后用户可以发送如下请求:http://server:8080/videomanager?action=status&token=12312312ddsadad31231
- servlet 收到此请求并检查它之前运行的进程(使用令牌 12312312ddsadad31231)是否仍在运行,并以“已完成”或“仍在运行”响应用户
我知道我可以使用 ProcessBuilder 或 Runtime.exec() 来运行 .exe 应用程序,但我不知道如何让 servlet 让进程保持运行并做出响应。
谢谢!
问候,
西安
【问题讨论】:
标签: java asynchronous servlets process token