【问题标题】:AvailableVirtualMemory on IIS and Console applicationIIS 和控制台应用程序上的 AvailableVirtualMemory
【发布时间】:2015-06-11 21:54:32
【问题描述】:

我无法在 IIS 和控制台应用程序中获取 AvailableVirtualMemory 的实际值,详情如下:

当我在控制台应用程序上运行这些命令时:

Console.WriteLine(String.Format("Memoria virtual total: {0}MB", My.Computer.Info.TotalVirtualMemory / 1024 / 1024))
Console.WriteLine(String.Format("Memoria virtual disponible: {0}MB", CDec(My.Computer.Info.AvailableVirtualMemory / 1024 / 1024)))

控制台向我显示了这些结果:

内存虚拟总量:8388607.875MB
内存虚拟内存:8388028.16015625MB

但是当我在 .aspx 页面上运行这些命令时:

Response.Write(String.Format("Memoria virtual total: {0}MB", My.Computer.Info.TotalVirtualMemory / 1024 / 1024))
Response.Write("<br>")
Response.Write(String.Format("Memoria virtual disponible: {0}MB", CDec(My.Computer.Info.AvailableVirtualMemory / 1024 / 1024)))

该页面向我显示了这些结果:

Memoria 虚拟总容量:4095.875MB
内存虚拟内存:3367.91796875MB

为什么在这些不同的应用程序上存在这种差异?我使用的是 64 位操作系统。 我在谷歌和这里搜索了原因,但我没有找到任何东西......
提前致谢。

【问题讨论】:

    标签: asp.net iis memory console-application


    【解决方案1】:

    运行您的.aspx 页面的站点的应用程序池(是的,IIS Express 甚至有这些)可能配置为 32 位模式,这就是它分别返回 4GB 和 3.3GB 的原因。作为一个 32 位进程,它只能看到它。

    如果您在 Visual Studio 玩具 Web 服务器中运行此页面,您将获得相同的结果,因为它也是 32 位的。

    【讨论】:

    • 对我来说听起来很清楚,如果是这种情况,我会检查并稍后将此答案标记为已接受。谢谢
    猜你喜欢
    • 1970-01-01
    • 2012-02-04
    • 2010-11-04
    • 1970-01-01
    • 2012-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多