gpt4 book ai didi

c# - ASP .NET 单例

转载 作者:IT王子 更新时间:2023-10-29 04:02:01 24 4
gpt4 key购买 nike

只是想确保我在这里没有做出愚蠢的假设,当在 ASP .Net Web 应用程序中实现单例模式时,静态变量范围仅适用于当前用户 session ,对吗?如果第二个用户正在访问该站点,那么它是一个不同的内存范围...?

最佳答案

静态成员只有当前工作进程的范围,所以它与用户无关,因为其他请求不一定由同一个工作进程处理。

  • 为了与特定用户和跨请求共享数据,请使用 HttpContext.Current.Session。
  • 为了在特定请求中共享数据,请使用 HttpContext.Current.Items。
  • 为了在整个应用程序中共享数据,要么为此编写一个机制,要么将 IIS 配置为使用单个进程并编写一个单例/使用应用程序。

顺便说一句,工作进程的默认数量是 1,所以这就是为什么网络上到处都是认为静态成员具有整个应用程序范围的人。

关于c# - ASP .NET 单例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2134511/

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