作为优雅的.NET 4.5应用程序关闭的一部分,我想要部署Windsor Castle IoC容器的实例。容器有大约100个在应用程序生命周期中实例化的对象,它们的子集实现了IDisposable,将作为容器配置机制的一部分进行调用。
令我惊讶的是,延迟时间大约为10秒: - 从我调用container.Dispose()的那一刻起 - 从应用程序中的一个对象上调用第一个Dispose()时
这会将应用程序关闭时间增加到不可接受的水平,因为现在用户必须等待超过10秒才能关闭应用程序。 (注意:CPU是Intel i5,有6GB的RAM)
我不确定Windsor容器在底层执行的逻辑是什么,但我想知道有什么方法可以减少这种延迟吗?