Desafortunadamente, no hay nada integrado en Qt para esto. Debe hacer esto por plataforma.
Aquí hay algunos ejemplos para comenzar. Tuve que implementar esto en una de mis aplicaciones la semana pasada. El código a continuación todavía está en desarrollo; puede haber errores o filtraciones, pero al menos podría indicarle la dirección correcta. Solo me interesaba la RAM física total, pero los otros valores están disponibles de la misma manera. (Excepto quizás la memoria en uso por la aplicación actual ... no estoy seguro de que uno.)
de Windows (GlobalMemoryStatusEx)
MEMORYSTATUSEX memory_status;
ZeroMemory(&memory_status, sizeof(MEMORYSTATUSEX));
memory_status.dwLength = sizeof(MEMORYSTATUSEX);
if (GlobalMemoryStatusEx(&memory_status)) {
system_info.append(
QString("RAM: %1 MB")
.arg(memory_status.ullTotalPhys/(1024 * 1024)));
} else {
system_info.append("Unknown RAM");
}
Linux (/ proc/meminfo)
QProcess p;
p.start("awk", QStringList() << "/MemTotal/ { print $2 }" << "/proc/meminfo");
p.waitForFinished();
QString memory = p.readAllStandardOutput();
system_info.append(QString("; RAM: %1 MB").arg(memory.toLong()/1024));
p.close();
Mac (sysctl)
QProcess p;
p.start("sysctl", QStringList() << "kern.version" << "hw.physmem");
p.waitForFinished();
QString system_info = p.readAllStandardOutput();
p.close();
http://stackoverflow.com/questions/27201876/memory-management-issue-with-deleting-qquickview-in-qt5-3mingw32/27203897#27203897 – dtech