当前位置: 首页 > news >正文

网站后台系统设置iis5.1怎么新建网站

网站后台系统设置,iis5.1怎么新建网站,百度公司销售卖什么的,深圳建设工程交易平台一、前言 在很多软件上#xff0c;会在某个部位显示一个部件#xff0c;专门显示当前的CPU使用率以及内存占用#xff0c;方便用户判断当前程序或者当前环境中是否还有剩余的CPU和内存留给程序使用#xff0c;在不用打开任务管理器或者资源查看器的时候直接得知当前系统的…一、前言 在很多软件上会在某个部位显示一个部件专门显示当前的CPU使用率以及内存占用方便用户判断当前程序或者当前环境中是否还有剩余的CPU和内存留给程序使用在不用打开任务管理器或者资源查看器的时候直接得知当前系统的运行情况。尤其是视频监控系统如果64路全开肯定很占用CPU和内存情况这样直接在软件上直观的查看到当前占用率用户更方便判断当前电脑环境是否适合打开多少路通道。 采集本地系统的实时CPU使用率如果使用的GetSystemTimes函数会发现和本地任务管理器中的不一致主要集中在win10系统/win7和XP系统貌似正常那是因为计数统计的方式不一样采用GetSystemTimes函数获取到的值相对来说是系统底层的数据。为了能够和任务管理器中展示的一致试验过各种办法后决定采用命令行获取的形式处理这样获取到的值是一致的在win10以下的系统执行 typeperf “\Processor(_Total)\% Processor Time”在win10及以上的系统执行 typeperf “\Processor Information(_Total)\% Processor Utility”。执行命令采用QProcess类执行结果有信号通知直接读取解析即可。同理在linux系统上也是采用执行命令行的形式获取比如linux上获取CPU占用命令是 cat /proc/stat获取内存相关命令是 cat /proc/meminfo。在windows上获取内存相关使用函数 GlobalMemoryStatusEx。 二、主要功能 实时显示当前CPU占用率。实时显示内存使用情况。包括共多少内存、已使用多少内存。全平台通用包括windows、linux、ARM。发出信号通知占用率和内存使用情况等以便自行显示到其他地方。 三、效果图 四、开源主页 以上作品完整源码下载都在开源主页会持续不断更新作品数量和质量欢迎各位关注。本开源项目已经成功升级到V2.0版本分门别类图文并茂保你爽到爆。Qt开源武林秘籍开发经验看完学完20K起薪没有找我 国内站点https://gitee.com/feiyangqingyun/QWidgetDemo国际站点https://github.com/feiyangqingyun/QWidgetDemo开源秘籍https://gitee.com/feiyangqingyun/qtkaifajingyan个人主页https://qtchina.blog.csdn.net/视频主页https://space.bilibili.com/687803542 五、核心代码 #pragma execution_character_set(utf-8)#include cpumemorylabel.h #include qtimer.h #include qprocess.h #include qdebug.h#ifdef Q_OS_WIN #ifndef _WIN32_WINNT #define _WIN32_WINNT 0x502 #endif #include windows.h #endif#define MB (1024 * 1024) #define KB (1024)CpuMemoryLabel::CpuMemoryLabel(QWidget *parent) : QLabel(parent) {totalNew idleNew totalOld idleOld 0;cpuPercent 0;memoryPercent 0;memoryAll 0;memoryUse 0;//获取CPU占用情况定时器timerCPU new QTimer(this);connect(timerCPU, SIGNAL(timeout()), this, SLOT(getCPU()));//获取内存占用情况定时器timerMemory new QTimer(this);connect(timerMemory, SIGNAL(timeout()), this, SLOT(getMemory()));//执行命令获取process new QProcess(this);connect(process, SIGNAL(readyRead()), this, SLOT(readData()));showText true; }CpuMemoryLabel::~CpuMemoryLabel() {this-stop(); }void CpuMemoryLabel::start(int interval) {this-getCPU();this-getMemory();if (!timerCPU-isActive()) {timerCPU-start(interval);}if (!timerMemory-isActive()) {timerMemory-start(interval 1000);} }void CpuMemoryLabel::stop() {process-close();if (timerCPU-isActive()) {timerCPU-stop();}if (timerMemory-isActive()) {timerMemory-stop();} }void CpuMemoryLabel::getCPU() { #ifdef Q_OS_WIN #if 0static FILETIME lastIdleTime;static FILETIME lastKernelTime;static FILETIME lastUserTime;FILETIME newIdleTime;FILETIME newKernelTime;FILETIME newUserTime;//采用GetSystemTimes获取的CPU占用和任务管理器的不一致GetSystemTimes(newIdleTime, newKernelTime, newUserTime);int offset 31;quint64 a, b;quint64 idle, kernel, user;a (lastIdleTime.dwHighDateTime offset) | lastIdleTime.dwLowDateTime;b (newIdleTime.dwHighDateTime offset) | newIdleTime.dwLowDateTime;idle b - a;a (lastKernelTime.dwHighDateTime offset) | lastKernelTime.dwLowDateTime;b (newKernelTime.dwHighDateTime offset) | newKernelTime.dwLowDateTime;kernel b - a;a (lastUserTime.dwHighDateTime offset) | lastUserTime.dwLowDateTime;b (newUserTime.dwHighDateTime offset) | newUserTime.dwLowDateTime;user b - a;cpuPercent float(kernel user - idle) * 100 / float(kernel user);lastIdleTime newIdleTime;lastKernelTime newKernelTime;lastUserTime newUserTime;this-setData(); #else//获取系统版本区分win10bool win10 false; #if (QT_VERSION QT_VERSION_CHECK(5,4,0))win10 (QSysInfo::productVersion().mid(0, 2).toInt() 10); #elsewin10 (QSysInfo::WindowsVersion 192); #endifQString cmd \\Processor(_Total)\\% Processor Time;if (win10) {cmd \\Processor Information(_Total)\\% Processor Utility;}if (process-state() QProcess::NotRunning) {process-start(typeperf, QStringList() cmd);} #endif#elif defined(Q_OS_UNIX) !defined(Q_OS_WASM)if (process-state() QProcess::NotRunning) {totalNew idleNew 0;process-start(cat, QStringList() /proc/stat);} #endif }void CpuMemoryLabel::getMemory() { #ifdef Q_OS_WINMEMORYSTATUSEX statex;statex.dwLength sizeof(statex);GlobalMemoryStatusEx(statex);memoryPercent statex.dwMemoryLoad;memoryAll statex.ullTotalPhys / MB;memoryFree statex.ullAvailPhys / MB;memoryUse memoryAll - memoryFree;this-setData();#elif defined(Q_OS_UNIX) !defined(Q_OS_WASM)if (process-state() QProcess::NotRunning) {process-start(cat, QStringList() /proc/meminfo);} #endif }void CpuMemoryLabel::readData() { #ifdef Q_OS_WINwhile (!process-atEnd()) {QString s QLatin1String(process-readLine());s s.split(,).last();s.replace(\r, );s.replace(\n, );s.replace(\, );if (!s.isEmpty() s.length() 10) {cpuPercent qRound(s.toFloat());}} #elif defined(Q_OS_UNIX) !defined(Q_OS_WASM)while (!process-atEnd()) {QString s QLatin1String(process-readLine());if (s.startsWith(cpu)) {QStringList list s.split( );idleNew list.at(5).toUInt();foreach (QString value, list) {totalNew value.toUInt();}quint64 total totalNew - totalOld;quint64 idle idleNew - idleOld;cpuPercent 100 * (total - idle) / total;totalOld totalNew;idleOld idleNew;break;} else if (s.startsWith(MemTotal)) {s.replace( , );s s.split(:).at(1);memoryAll s.left(s.length() - 3).toUInt() / KB;} else if (s.startsWith(MemFree)) {s.replace( , );s s.split(:).at(1);memoryFree s.left(s.length() - 3).toUInt() / KB;} else if (s.startsWith(Buffers)) {s.replace( , );s s.split(:).at(1);memoryFree s.left(s.length() - 3).toUInt() / KB;} else if (s.startsWith(Cached)) {s.replace( , );s s.split(:).at(1);memoryFree s.left(s.length() - 3).toUInt() / KB;memoryUse memoryAll - memoryFree;memoryPercent 100 * memoryUse / memoryAll;break;}} #endifthis-setData(); }void CpuMemoryLabel::setData() {cpuPercent (cpuPercent 0 ? 0 : cpuPercent);cpuPercent (cpuPercent 100 ? 0 : cpuPercent);QString msg QString(CPU %1% Mem %2% ( 已用 %3 MB / 共 %4 MB )).arg(cpuPercent).arg(memoryPercent).arg(memoryUse).arg(memoryAll);if (showText) {this-setText(msg);}emit textChanged(msg);emit valueChanged(cpuPercent, memoryPercent, memoryAll, memoryUse, memoryFree); }QSize CpuMemoryLabel::sizeHint() const {return QSize(300, 30); }QSize CpuMemoryLabel::minimumSizeHint() const {return QSize(30, 10); }bool CpuMemoryLabel::getShowText() const {return this-showText; }void CpuMemoryLabel::setShowText(bool showText) {this-showText showText; }
http://www.w-s-a.com/news/243823/

相关文章:

  • 昭通做网站儿童编程教学入门教程
  • eclipse静态网站开发软文广告投放平台
  • 网站建设教学视频济南做网站需要多少钱
  • 网站免费做软件市工商联官方网站建设方案
  • 网站建设大体包含英铭长沙网站建设
  • 网站建设培训学校北京如何搜索网站
  • discuz论坛模板哪些网站容易做seo优化
  • 渭南公司做网站网站建设互联网推广
  • 公司网站app怎么做杭州建设局网站
  • 网站开发需要自己写代码吗12306网站多少钱做的
  • 策勒网站建设四川建设网有限责任公司招聘
  • 网站建设哪里有学网页界面设计论文
  • 怎么做外贸网站推广劳务公司网站怎么做
  • 滴答手表网站中铁建设集团有限公司招聘信息2021
  • 重庆富通科技有限公司网站新闻头条最新消息国家大事
  • 四字母net做网站怎么样企业代运营公司
  • 纪检网站建设方案wordpress首页静态页面
  • 网站右下角浮动效果如何做网站logo设计在线生成
  • 西宁哪里做网站婚纱摄影网站设计思路
  • 凡科用模板做网站网站导入页欣赏
  • 北京响应式网站建设公司十大小程序开发公司
  • dw网站开发删除wordpress主题底部
  • 织梦网站怎样做子域名高德导航怎么看街景地图
  • 宿州专业网站建设株洲网站建设优化
  • 自动生成海报的网站常州建网站公司
  • 网站刷流量对网站有影响吗站长工具欧美高清
  • 百度做网站优化多少钱一年罗庄网站建设
  • 手机网站 自适应屏幕h5网站有哪些
  • 北京企业建站技术临沂网站公众号建设
  • 域名和网站备案一样吗wordpress 封装 app