让我们想象一下,我创建了一个Flux。此Flux在创建过程中已被授予访问某些资源的权限,并且我希望在Cancel
/ Complete
上进行一些清理(例如,释放一些外部资源)。最后,我删除了所有指向Flux的指针,因此它可用于垃圾收集。垃圾收集会发生什么?我的Flux是否收到Cancel
信号,以便进行清理?
答案 0 :(得分:1)
Flux
在GCed时不会收到取消信号)Flux.using
的工厂运营商需要资源供应商和清理回调。否则,您可以使用doFinally
执行清理操作Flux
不是无限的(例如,Flux.create
从不调用complete
或error
)或被取消。 Flux
,因此如果没有订阅它,资源可能尚未初始化(再次,只要它们在Flux.create
回调中初始化,否则你的里程可能会有所不同)