我在JavaFX应用程序中使用Weld SE容器(实际上是通过AfterburnerFX)。初始化组件(向用户显示对话窗口时)并注入其字段。但是,创建其中一个依赖项需要很长时间。
是否有可用的工具直接在Weld SE中实例化异步 bean?如果没有,那么处理这个问题的常见设计模式是什么?
答案 0 :(得分:0)
如果要以编程方式控制实例化,可以为组件注入Provider
:
//Instead of
@Inject MyComponent comp;
// do this:
@Inject Provider<MyComponent> compProvider;
// Usage in code at any given time:
MyComponent comp = compProvider.get();
请注意,您可能会在将来的某个时间(或不同的答案)找到替代Instance
而不是Provider
,这是一个实现提供程序的扩展接口和一些更有用的函数。< / p>