1
    private static List<string> _Process;
    public List<string> Process
    {
        get { return _Process; }
        set { _Process = value; }
    }

    private static string _IDsCombination;
    public string IDsCombination
    {
        get { return _IDsCombination; }
        set { _IDsCombination = value; }
    }

    private static int _QCID;
    public int QCID
    {
        get { return _QCID; }
        set { _QCID = value; }
    }

如上所述,我创建了一些静态变量,它们是否为所有用户共享相同的内存。

4

2 回答 2

1

简短的回答:很可能是的。

长答案: 静态成员在应用程序域中共享。

如果您只在一个 Web 应用程序中运行您的网站,在单个服务器上,那么的。这对于小型 Web 应用程序很常见。

但是,如果您在多个服务器/Web 应用程序上运行(例如在 Web 场中),那么它们不会在它们之间共享(就像 inProc 会话不共享一样)。如果您在这种环境中运行,那么您需要查看其他解决方案,例如将其保存在数据库或缓存服务器中。

此外,如果您打算这样做,您应该使访问线程安全。请参阅:多线程 (MSDN)。在此特定示例中,您可能希望使用 aReaderWriterLock或 aMutex

于 2013-10-23T09:46:33.083 回答
0

是因为代码在服务器上运行并且它在所有用户之间共享

于 2013-10-23T09:51:19.270 回答