如果我在Blazor中删除一个类实例会怎样



场景:

  1. 我创建了一个新的类实例(在我的情况下,是一个游戏的玩家,包括他们本次会话的点数、他们选择的化身图形等)
  2. 我添加了对Singleton服务(游戏服务器)的引用
  3. 玩家离开

问题:

该引用是否由Blazor维护,因为它在某个地方(服务器)仍然处于活动状态,或者创建对象如果被释放,会删除该引用,导致服务器中出现null错误

我试过这样做,但即使在用户离开后,页面似乎也能得到维护。我担心不合时宜的垃圾收集可能会导致null异常,但我很好奇Blazor(C#?)是否足够聪明,不会处理传递给其他对象的引用。

类实例只是一个类还是一个服务?如果它只是一个类,那么它在被引用时保持活动状态。一旦最后一个引用被销毁,它就开始进行垃圾收集。在您的实例中,只要singleton服务拥有引用,那么它就会保持活动状态。

相关内容

  • 没有找到相关文章

最新更新