From: qydysky Date: Sat, 1 Aug 2020 18:33:31 +0000 (+0800) Subject: 24 X-Git-Tag: v0.0.2~64 X-Git-Url: http://127.0.0.1:8081/?a=commitdiff_plain;h=16632b172fa280feafce153e7938e26b4385d2e0;p=part%2F.git 24 --- diff --git a/Sys.go b/Sys.go index d2be35d..fb76af5 100644 --- a/Sys.go +++ b/Sys.go @@ -9,7 +9,10 @@ import ( "net" "strconv" "io/ioutil" + "errors" + gopsutilLoad "github.com/shirou/gopsutil/load" + gopsutilCpu "github.com/shirou/gopsutil/cpu" Ppart "github.com/qydysky/part/linuxwin" ) @@ -114,4 +117,13 @@ func (this *sys) CheckProgram(pros ...string) []int { func (this *sys) SetProxy(s,pac string) error { return Ppart.PProxy(s,pac); +} + +func GetCpuPercent() (float64,error) { + if a,e := gopsutilLoad.Avg();e == nil{ + if i,e:=gopsutilCpu.Counts(true);e == nil{ + return (*a).Load1/float64(i),nil + }else{Logf().E(e.Error())} + }else{Logf().E(e.Error())} + return 0.0,errors.New("cant get CpuPercent") } \ No newline at end of file diff --git a/go.mod b/go.mod index 3cfaed9..726aed3 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,10 @@ module github.com/qydysky/part go 1.14 require ( + github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d // indirect + github.com/go-ole/go-ole v1.2.4 // indirect github.com/klauspost/compress v1.10.10 + github.com/shirou/gopsutil v2.20.6+incompatible github.com/thedevsaddam/gojsonq v2.3.0+incompatible + golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1 // indirect ) diff --git a/go.sum b/go.sum index b0ae02b..989fafa 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,13 @@ +github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d h1:G0m3OIz70MZUWq3EgK3CesDbo8upS2Vm9/P3FtgI+Jk= +github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg= +github.com/go-ole/go-ole v1.2.4 h1:nNBDSCOigTSiarFpYE9J/KtEA1IOW4CNeqT9TQDqCxI= +github.com/go-ole/go-ole v1.2.4/go.mod h1:XCwSNxSkXRo4vlyPy93sltvi/qJq0jqQhjqQNIwKuxM= github.com/klauspost/compress v1.10.10 h1:a/y8CglcM7gLGYmlbP/stPE5sR3hbhFRUjCBfd/0B3I= github.com/klauspost/compress v1.10.10/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/shirou/gopsutil v2.20.6+incompatible h1:P37G9YH8M4vqkKcwBosp+URN5O8Tay67D2MbR361ioY= +github.com/shirou/gopsutil v2.20.6+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= github.com/thedevsaddam/gojsonq v1.9.1 h1:zQulEP43nwmq5EKrNWyIgJVbqDeMdC1qzXM/f5O15a0= github.com/thedevsaddam/gojsonq v2.3.0+incompatible h1:i2lFTvGY4LvoZ2VUzedsFlRiyaWcJm3Uh6cQ9+HyQA8= github.com/thedevsaddam/gojsonq v2.3.0+incompatible/go.mod h1:RBcQaITThgJAAYKH7FNp2onYodRz8URfsuEGpAch0NA= +golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1 h1:sIky/MyNRSHTrdxfsiUSS4WIAMvInbeXljJz+jDjeYE= +golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=