gpt4 book ai didi

c# - 关于 C# 和静态类和函数的问题

转载 作者:太空狗 更新时间:2023-10-29 22:29:31 24 4
gpt4 key购买 nike

我在这里看到了很多关于这个主题的讨论。

如果我有一个带有连接到数据库或服务器的静态方法的静态类,在多用户环境(如网页)中使用它是不是一个坏主意?这是否会使新用户的线程等待以前用户的线程完成他们的调用,然后再接受新用户的调用?

这对多线程有何影响?

谢谢!

最佳答案

如果每个静态方法都完全负责获取其资源,然后在方法调用的范围内处理其资源(无共享状态),那么您应该不会遇到使用实例不会遇到的线程问题类。然而,我建议,更大的问题是依赖公共(public)静态方法(在静态或非静态类中)会在未来产生许多其他设计问题。

  • 首先,您与实现绑定(bind)得非常紧,这总是很糟糕。
  • 其次,测试所有依赖于您的静态方法的类变得非常困难,因为您被锁定在一个实现上。
  • 第三,创建非线程安全方法确实变得非常容易,因为静态方法只能有静态状态(在所有方法调用中共享)。

关于c# - 关于 C# 和静态类和函数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/781732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com