【发布时间】:2019-06-01 01:16:47
【问题描述】:
我们有一个 AWS lambda 函数,它需要通过调用远程服务来执行一些检查。只要其中一个返回false,lambda就可以返回;否则,需要完成所有检查以确保没有返回错误。现在我正在使用并行流来运行任务,因为它们可以独立运行。
在一种可能并不罕见的情况下,主线程返回,而其中一个任务仍在其线程中运行,或者线程阻塞等待 I/O,因为短路已经看到另一个任务的错误. AWS lambda 文档说,当主线程返回时,Lambda 中的所有线程都将被冻结。一旦 lambda 处理下一个请求,它们就会解冻。繁忙/阻塞线程在重新激活后会继续处理原始任务,还是会为当前请求承担新任务?
如果 Lambda 大师能分享一些见解,我将不胜感激。
【问题讨论】:
标签: java concurrency java-8 aws-lambda