【问题标题】:static variable persistence in IISIIS 中的静态变量持久性
【发布时间】:2018-08-02 07:46:54
【问题描述】:

我使用了静态变量,希望它能在 IIS 中持续存在。但有时,它被清除了。 IIS有可能会清除静态变量吗?

public partial class Main : CustomPage
 {
    public static bool cachedCurrentYearDataInFile = false;

【问题讨论】:

  • 如果应用程序池回收或您切换到不同的工作进程,那么可以。
  • 扩展@pinkfloydx33评论,如果设置了模拟可以启动一个新的工作进程,不同的用户会在不同的用户帐户下启动不同的进程。
  • 我很长时间以来第一次看到iis标签,它是相关的
  • 为了避免不同的工作进程错误行为,您可以改用HttpContext.Application

标签: c# iis static application-pool


【解决方案1】:

static 变量在应用程序周期中存在。如果应用程序结束(检查应用程序池设置,如空闲和回收),则会生成一个新实例,您将丢失现在不存在的所有静态信息。如果你想要持久性,你应该考虑,像文件/数据库这样的实际持久性。

【讨论】:

    猜你喜欢
    • 2011-08-24
    • 1970-01-01
    • 1970-01-01
    • 2021-05-19
    • 2011-10-05
    • 1970-01-01
    • 2010-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多