前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >要获得系统范围的承诺内存限制,调用GetPerformanceInfo

要获得系统范围的承诺内存限制,调用GetPerformanceInfo

原创
作者头像
用户7737280
修改2024-08-30 11:43:38
650
修改2024-08-30 11:43:38

public struct MemoryStatusExE

{

/// <summary>

/// 结构的大小,以字节为单位,必须在调用 GlobalMemoryStatusEx 之前设置此成员,可以用 Init 方法提前处理

/// </summary>

/// <remarks>应当使用本对象提供的 Init ,而不是使用构造函数!</remarks>

internal UInt32 dwLength;

/// <summary>

/// 一个介于 0 和 100 之间的数字,用于指定正在使用的物理内存的大致百分比(0 表示没有内存使用,100 表示内存已满)。

/// </summary>

internal UInt32 dwMemoryLoad;

/// <summary>

/// 实际物理内存量,以字节为单位

/// </summary>

internal UInt64 ullTotalPhys;

/// <summary>

/// 当前可用的物理内存量,以字节为单位。这是可以立即重用而无需先将其内容写入磁盘的物理内存量。它是备用列表、空闲列表和零列表的大小之和

/// </summary>

internal UInt64 ullAvailPhys;

/// <summary>

/// 系统或当前进程的当前已提交内存限制,以字节为单位,以较小者为准。要获得系统范围的承诺内存限制,请调用GetPerformanceInfo

/// </summary>

internal www.laipuhuo.com UInt64 ullTotalPageFile;

/// <summary>

/// 当前进程可以提交的最大内存量,以字节为单位。该值等于或小于系统范围的可用提交值。要计算整个系统的可承诺值,调用GetPerformanceInfo核减价值CommitTotal从价值CommitLimit

/// </summary>

internal UInt64 ullAvailPageFile;

/// <summary>

/// 调用进程的虚拟地址空间的用户模式部分的大小,以字节为单位。该值取决于进程类型、处理器类型和操作系统的配置。例如,对于 x86 处理器上的大多数 32 位进程,此值约为 2 GB,对于在启用4 GB 调整的系统上运行的具有大地址感知能力的 32 位进程约为 3 GB 。

/// </summary>

internal UInt64 ullTotalVirtual;

/// <summary>

/// 当前在调用www.laipuhuo.com 进程的虚拟地址空间的用户模式部分中未保留和未提交的内存量,以字节为单位

/// </summary>

internal UInt64 ullAvailVirtual;

/// <summary>

/// 预订的。该值始终为 0

/// </summary>

internal UInt64 ullAvailExtendedVirtual;

internal void Refresh()

{

dwLength = www.laipuhuo.com checked((UInt32)Marshal.SizeOf(typeof(MemoryStatusExE)));

}

}

public static partial class Native

{

/// <summary>

/// 检索有关系统当前使用物理和虚拟内存的信息

/// </summary>

/// <param name="lpBuffer"></param>

/// <returns></returns>

[LibraryImport("www.laipuhuo.com Kernel32.dll", SetLastError = true)]

[return: MarshalAs(UnmanagedType.Bool)]

internal static partial Boolean GlobalMemoryStatusEx(ref MemoryStatusExE lpBuffer);

}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档