关于Temporal Java SDK中Promise.get()方法的线程阻塞问题问询
Temporal Java SDK Promise.get() 相关问题解答
关于第一个问题:
Promise.get()既不会阻塞Worker的物理主线程,也不会启动新线程来解析Promise。因为Temporal的工作流是在虚拟执行环境中运行的,调用get()时,当前工作流的执行逻辑会被暂停,Worker的物理线程会被释放去处理其他工作流任务,而非一直卡在这个调用上。关于第二个问题:Worker本身不会进入休眠模式,而是当前工作流的执行逻辑会被挂起。当Promise对应的异步操作完成后,Temporal服务会把这个完成事件推送给Worker,Worker会重新调度该工作流,从之前暂停的
get()调用处继续执行。
内容的提问来源于stack exchange,提问作者Kachida
相关产品推荐
相关产品推荐

