cpuTemperature() optimizes scanning AMD linux sensors
This commit is contained in:
@@ -789,6 +789,7 @@ function cpuTemperature(callback) {
|
||||
exec('sensors', function (error, stdout) {
|
||||
if (!error) {
|
||||
let lines = stdout.toString().split('\n');
|
||||
let tdieTemp = -1;
|
||||
lines.forEach(function (line) {
|
||||
let regex = /[+-]([^°]*)/g;
|
||||
let temps = line.match(regex);
|
||||
@@ -799,6 +800,9 @@ function cpuTemperature(callback) {
|
||||
if (firstPart.indexOf('CORE ') !== -1) {
|
||||
result.cores.push(parseFloat(temps));
|
||||
}
|
||||
if (firstPart.indexOf('TDIE') !== -1 && tdieTemp === -1) {
|
||||
tdieTemp = parseFloat(temps);
|
||||
}
|
||||
});
|
||||
if (result.cores.length > 0) {
|
||||
if (result.main === -1) {
|
||||
@@ -806,6 +810,11 @@ function cpuTemperature(callback) {
|
||||
}
|
||||
let maxtmp = Math.max.apply(Math, result.cores);
|
||||
result.max = (maxtmp > result.main) ? maxtmp : result.main;
|
||||
} else {
|
||||
if (result.main === -1 && tdieTemp !== -1) {
|
||||
result.main = tdieTemp;
|
||||
result.max = tdieTemp;
|
||||
}
|
||||
}
|
||||
if (callback) { callback(result); }
|
||||
resolve(result);
|
||||
|
||||
Reference in New Issue
Block a user