springboot多线程问题

发布于 2022-09-06 20:03:21 字数 534 浏览 20 评论 0

我做了一个基于springboot的与手机App交互的系统。
正常来说,就是App向系统发送一个POST Request,请求内容是一段json。然后我的系统处理完会立马Response一串json。

但是现在有个需求,我的App向系统发送完Request后,系统会立刻Response,然后系统再处理一些东西,最后给手机App发一个推送。

我想用多线程的方式,系统的Controller拦截到Request后,交给Service处理。Service里启动一个子线程,然后Service就return了一段json,主线程工作结束,并且手机收到了Response。刚才启动的子线程此时还在处理,等几秒钟处理完成后,再向手机App发送推送。
可是我测试的时候发现,一旦Service return了之后,子线程也就停止运行了。

所以这种需求应该用什么方式实现?或者有没有办法,Service可以提前Response数据给手机,然后继续处理,就是说不再使用return “json”的方式,而且用某种方法Response,然后继续跑剩下的内容,最后Service的函数结束,这样也就不用启动子线程了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不如归去 2022-09-13 20:03:21

将所有的子线程都使用一个指定的线程池去维护,在系统启动时初始化这个线程池。在service中将任务线程提交到线程池中,线程池处理任务并给出相应推送结果。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文