C++ 检测物理内存以及磁盘空间

BOOL CheckResource()
{
    MEMORYSTATUSEX statex;
    statex.dwLength = sizeof (statex);
    GlobalMemoryStatusEx(&statex);
    if (statex.ullTotalPhys / 1024 / 1024 / 1024 < 2){
        ::MessageBox(NULL, L"物理内存小于 2G", L"提示", MB_ICONWARNING);
        return 0;
    }
    if (statex.ullAvailPhys / 1024 / 1024 /1024 < 1){
        ::MessageBox(NULL, L"物理有效内存小于 1G", L"提示", MB_ICONWARNING);
        return 0;
    }

    ULARGE_INTEGER lpFreeBytesAvailable;
    ULARGE_INTEGER lpTotalNumberOfBytes;
    ULARGE_INTEGER lpTotalNumberOfFreeBytes;

    GetDiskFreeSpaceEx(NULL, &lpFreeBytesAvailable, &lpTotalNumberOfBytes, &lpTotalNumberOfFreeBytes);
    if (lpTotalNumberOfFreeBytes.QuadPart / 1024 / 1024 / 1024 < 50){
        ::MessageBox(NULL, L"磁盘有效空间小于 50G", L"提示", MB_ICONWARNING);
        return 0;
    }
    return TRUE;
}
时间: 2024-12-21 19:29:06

C++ 检测物理内存以及磁盘空间的相关文章

检测系统磁盘空间

检测系统磁盘空间 系统磁盘空间检测是系统资源检测的重要部分,在系统维护维护中,我们经常需要查看服务器磁盘空间使用情况.因为有些业务要时时写话单,日志,或者临时文件等,如果磁盘空间用尽,也可能会导致业务中断,下面的函数可以检测当前系统磁盘空间中某个目录的磁盘空间使用情况 . 输入参数为需要检测的目录名,使用 df 输出系统磁盘空间使用信息,然后通过 grep 和 awk 过滤得到某个目录的磁盘空间使用百分比. function GetDiskSpc() { if [ $# -ne 1 ] then

从Linux系统磁盘空间不足引发的Zabbix服务器数据库迁移

之前一直没有去关心Zabbbix服务器存储空间问题,最近Zabbix报警提示/根目录磁盘空间不足,于是登录Zabbix看了一下,发现根目录只有1.3MB了,这怎么办了?第一个想到的是扩展根目录,结果发现不是用的LVM,采用的是标准的,心想也还可以救,就和Windows一样将D盘.E盘删除,再将D盘的空间扩展给C盘就OK啊,于是开始着手操作(注意提前备份虚拟机,最好做一个快照,出问题了好恢复) [[email protected] /]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /

磁盘空间增加swap分区

1)创建一个swap文件. swap分区最适合的大小事物理内存的1-2倍 进入到一个大的磁盘空间中 dd if=/dev/zero of=swapfile bs=1024 count=1024000增加1G. 或者 dd if=/dev/zero of=swapfile bs=1G count=1 2)把分区变成swap分区 /sbin/mkswap swapfile 3)使其成为有效状态 /sbin/swapon swapfile 4)检查是否正确 free -m 或者 /sbin/swapo

尝试一下: 仅加密已用磁盘空间

不辞辛劳的 CEO 决定将工作带回家做,因此她将几个机密文档复制到 USB 闪存驱动器.当她从钱包拿车钥匙时,闪存驱动器掉到了停车场.接下来发生什么取决于 CEO 回到办公室后所做的选择: 如果她启用了 BitLocker,会损失一晚上的工作成果和 10 美元的闪存驱动器. 如果她未启用 BitLocker,且机密文档最终落到坏人手中,公司可能损失数百万美元. 当然,CEO 应启用 BitLocker,但是您知道有多少 CEO 愿意等待半小时以便 BitLocker 完成加密闪存驱动器呢? 使用

ansible用playbook实现定期监控各机器磁盘空间任务

目标:用ansible定期监控各机器的磁盘空间状况 和进程运行状况 1)配置playbook脚本,实现对磁盘空间 和 特定进程运行状态的每日检查: 2)通过邮件插件,把检测结果发到ops邮箱: 一.playbook的配置实现 monitor_ansible.yaml 1 --- 2 - name: diskspace_mornitor 3 hosts: local 4 user: root 5 gather_facts: no 6 vars: 7 path: /home/devops 8 9 t

Linux服务器CPU、内存、磁盘空间、负载情况查看python脚本

网上搜,东拼西凑,组装了一个可以查Linux服务器CPU使用率.内存使用率.磁盘空间占用率.负载情况的python脚本. 脚本内容如下: # -*- coding:utf-8 -*- - import os, time last_worktime=0 last_idletime=0 def get_cpu(): global last_worktime, last_idletime f=open("/proc/stat","r") line=""

磁盘空间满了之后MySQL会怎样

大多数用户在对于磁盘进行分区的时候都是习惯性的不给系统盘预留很大空间,其实这并不是一个好习惯.因为系统分区并不像我们想象的那样会仅仅安装一个操作系统,系统分区多数还是会承载操作系统主要应用软件安装任务.那么当磁盘空间爆满后,MySQL会发生什么事呢?又应该怎么应对? 会发生什么事 当磁盘空间写满了之后,MySQL是无法再写入任何数据的,包括对表数据的写入,以及binlog.binlog-index等文件. 当然了,因为InnoDB是可以把脏数据先放在内存里,所以不会立刻表现出来无法写入,除非开启

iOS App占用太多磁盘空间

问题:随着App的不断运行,发现所占磁盘空间越来越大 分析:应该是网络下载中的缓存,包括利用SDWebImage产生的.和下载单个文件被取消后的缓存 验证:查看App目录中的Tmp(系统存放未下载完成的文件的缓存的地方),cache(SDWebImage 存放缓存的地方) 如上图,下载文件缓存有374M:如下图,SDWebImageCache有20M 最后附上检测文件大小的方法 - (float ) folderSizeAtPath:(NSString*) folderPath{ NSFileM

SharePoint运行状况分析器有关磁盘空间不足的警告

对于负责管理SharePoint内部部署安装的SharePoint管理员,SharePoint Health Analyzer是一款出色的工具.此功能不仅有助于解决服务器故障和服务失败的问题,还提供了有关如何解决问题的提示.总的来说,我觉得这个功能非常有帮助.但是,在某些情况下,健康分析器中的错误和警告可能完全是虚假的,必须予以忽略.虚假警告的一个例子是我在咨询期间在很多SharePoint服务器上看到的低磁盘警告.在虚拟环境中运行的SharePoint服务器上这些特别常见,我将在一分钟内解释.