ASP.NET 中的静态对象浪费内存?

2024-03-22

前几天我只是想知道这个问题。我不太确定 ASPX 如何管理垃圾处理,但据我所知,“完成加载”不会删除静态内存值或在页面重新加载后。至少就 C 而言,静态意味着内存分配会跟随您的程序,直到程序本身关闭。 ASPX 中也是这样吗?如果我有一个静态值,并且从页面 A 转到页面 B,则该静态值是否仍保留在 RAM 中,直到它们离开应用程序,或者一旦我不再位于页面 A 上,该值是否会被删除? (转到另一个网站,将其实例从服务器的应用程序池中删除)。

从我的经历来看:

  public static class foo
  {
      public static int x;
  }

  protected void Page_Load(object sender, EventArgs e)
  {
      foo.x++; //This will continue to increment from the last value before reload
  }

在 ASP.NET 中应避免使用静态类。它们保留在内存中,直到应用程序重新启动为止,并且会受到许多并发错误和竞争条件的影响。

并且关闭用户会话(浏览器会话)不会重新启动应用程序!即使用户离开并返回,它们也会保留在内存中。所以真的要避免静态类!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET 中的静态对象浪费内存? 的相关文章

随机推荐

  • 自动从外部文件替换表

    我正在尝试使用外部 XML 文件替换大型 300 MB XML 文件中的多个表 大约有 30 000 个表 并且有 23 000 个 XML 文件 因为某些表未更改 例如 如果我有
  • Scrapy:为什么提取的字符串是这种格式?

    我正在做 item desc site select a text extract 但这会像这样打印 u n A mano libera n 我必须做什么来添加和删除奇怪的字符 例如 u in 尾随空格和 我无法修剪 剥离 exceptio
  • jQuery mobile - 将页面拆分为不同的文件

    我正在开发一个基于 jQuery 和 jQuery mobile 的网络应用程序 我想显示不同的页面 但由于相应的 html 标记可能会变得很大 我想将 html 分成不同的文件 即 div div
  • 从另一个控制器调用 WebApi 控制器

    所以我的解决方案中有两个项目 两者都是WebApi 我在两者中都有控制器 我可以从客户端调用它们 javascript 问题是我需要从第一个项目的控制器中的方法调用第二个项目的控制器中的方法 我还认为我应该声明我需要调用的方法是 Post
  • 来自 learnsauce.com 的 google+ 集成代码引发了很多错误并且构建失败

    我尝试了很多网站进行 google 登录集成 但即使是 Developers android 代码也有很多错误 于是我看了一个学酱的视频 这是 Learn Sauce 的 G 集成视频教程的链接 https www youtube com
  • Swift3 GCD 中的 main.async 与 main.sync() 与 global().async

    示例 A 这会导致应用程序崩溃 DispatchQueue main async let url URL string imageUrl do let data try Data contentsOf url DispatchQueue m
  • ProtocolViolation:错误:绑定消息提供 0 个参数,但准备好的语句“”需要 1 个参数

    我正在尝试创建一个留下评论的独特患者列表 按照最先留下最近评论的患者的顺序排列 这是我用于创建列表的 Ruby erb 代码 comment list order created at desc each with index do com
  • Java 中的 x86 80 位浮点类型

    我想模拟 x86 扩展精度类型并执行算术运算并转换为 Java 中的其他类型 我可以尝试使用 BigDecimal 来实现它 但涵盖 NaN 无穷大和强制转换的所有特殊情况可能是一项乏味的任务 我知道一些库提供比 double 精度更高的其
  • 增加java中单个工作线程的堆栈空间

    在我的java web应用程序中 我有一个后台工作线程 它需要大量的堆栈空间 因为它使用activiti工作流引擎和groovy脚本任务运行一个非常复杂的工作流 目前 我需要在 64 位 Java 和 Tomcat 上将 JVM Xss 设
  • 不同平台上的平台默认字符集?

    一些遗留代码依赖于平台的默认字符集进行翻译 对于 西方世界 中的 Windows 和 Linux 安装 我知道这意味着什么 但考虑到俄罗斯或亚洲平台 我完全不确定他们平台的默认字符集是什么 只是 UTF 16 因此我想知道执行以下代码行时会
  • Array.prototype.includes函数如何比较对象

    在 ECMA 规范中 我们读到Array prototype includes https tc39 es ecma262 sec array prototype includes uses 相同值零 https tc39 es ecma2
  • 为什么错误:元素类型无效:需要一个字符串(对于内置组件)或一个类/函数(对于复合组件)但得到:数字

    我正在运行这个程序来显示 SVG 图像 import React Component from react import View from react native import Expo from assets check mark s
  • 不幸的是应用程序已停止 - android.os.NetworkOnMainThreadException [重复]

    这个问题在这里已经有答案了 我正在编写一个应用程序 其中允许用户输入其详细信息 但每当用户单击 提交 按钮时 我都会收到错误消息 错误消息如下 不幸的是应用程序已停止 android os NetworkOnMainThreadExcept
  • 通过键盘触发 JQuery 模态框的 Ctrl+P 打印

    我有一个在 JQuery 模态框中弹出的文档 该文档末尾有一个打印按钮 只需打印弹出框中的文档 我正在寻找一种解决方案 可以通过按 Ctrl P 打印弹出框 现在 Ctrl p 打印所有页面 包括背景 我只是希望找到一个解决方案 帮助我仅在
  • 如何使用 MSTest 从命令行运行 SpecFlow 场景?

    我有 Visual Studio 2010 并且我们有两个使用的 VS 解决方案 第一个是 Web 应用程序 第二个是严格用于 SpecFlow 测试 同时运行两个 Visual Studio 实例来运行 SpecFlow 功能会占用所有可
  • 从另一个网站获取数据

    我正在使用 PHP 创建一个新网站 我想从另一个有我的个人资料的网站获取数据 其中包含壁纸 徽标等 我想从该网站获取数据并将其显示在我的新网站的内容部分中 请给我一些关于如何在 PHP 中完成此任务的想法 提前致谢 参见例如这卷曲延伸 ht
  • Clojure 中的惯用模式函数

    我正在学习 Clojure 想要一些关于惯用用法的建议 作为小型统计包的一部分 我有一个计算一组数据的众数的函数 背景 众数是一组数据中最常见的值 几乎有十几种已发布的算法来计算它 这里使用的算法来自 Bernard Rosner 的 生物
  • 鼠标移动时滚动窗口

    大家好我的意思是 当鼠标移向窗口边缘 x 或 y 或两者 时 我希望页面滚动 当鼠标停止移动时 我希望页面停止滚动 有很多关于如何基于使用 onClick 事件或窗口边缘的滚动区域进行滚动的示例 但基于鼠标光标的移动的示例并不多 任何帮助将
  • 解析多部分表单数据

    我正在尝试组合一个 HTML POST 表单 该表单具有两个字段 文件上传和文本字段 由于表单具有用于文件上传的 multipart form data 类型 因此我无法通过正常的 PHP POST 变量获取文本字段 那么如何使用 PHP
  • ASP.NET 中的静态对象浪费内存?

    前几天我只是想知道这个问题 我不太确定 ASPX 如何管理垃圾处理 但据我所知 完成加载 不会删除静态内存值或在页面重新加载后 至少就 C 而言 静态意味着内存分配会跟随您的程序 直到程序本身关闭 ASPX 中也是这样吗 如果我有一个静态值