本文整理匯總了Golang中github.com/elastic/gosigar.Cpu.Get方法的典型用法代碼示例。如果您正苦於以下問題:Golang Cpu.Get方法的具體用法?Golang Cpu.Get怎麽用?Golang Cpu.Get使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/elastic/gosigar.Cpu
的用法示例。
在下文中一共展示了Cpu.Get方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: TestLinuxCPU
func TestLinuxCPU(t *testing.T) {
setUp(t)
defer tearDown(t)
tests := []struct {
stat string
user uint64
}{
{"cpu 25 1 2 3 4 5 6 7", 25},
// Ignore empty lines
{"cpu ", 0},
}
statFile := procd + "/stat"
for _, test := range tests {
func() {
statContents := []byte(test.stat)
err := ioutil.WriteFile(statFile, statContents, 0644)
if err != nil {
t.Fatal(err)
}
defer os.RemoveAll(statFile)
cpu := sigar.Cpu{}
if assert.NoError(t, cpu.Get()) {
assert.Equal(t, uint64(test.user), cpu.User, "cpu.User")
}
}()
}
}
示例2: GetCpuTimes
func GetCpuTimes() (*CpuTimes, error) {
cpu := sigar.Cpu{}
err := cpu.Get()
if err != nil {
return nil, err
}
return &CpuTimes{Cpu: cpu}, nil
}
示例3: GetCpuTimes
func GetCpuTimes() (*CpuTimes, error) {
cpu := sigar.Cpu{}
err := cpu.Get()
if err != nil {
return nil, err
}
return &CpuTimes{
User: cpu.User,
Nice: cpu.Nice,
System: cpu.Sys,
Idle: cpu.Idle,
IOWait: cpu.Wait,
Irq: cpu.Irq,
SoftIrq: cpu.SoftIrq,
Steal: cpu.Stolen,
}, nil
}
示例4:
statFile string
cpu sigar.Cpu
)
BeforeEach(func() {
statFile = procd + "/stat"
cpu = sigar.Cpu{}
})
Describe("Get", func() {
It("gets CPU usage", func() {
statContents := []byte("cpu 25 1 2 3 4 5 6 7")
err := ioutil.WriteFile(statFile, statContents, 0644)
Expect(err).ToNot(HaveOccurred())
err = cpu.Get()
Expect(err).ToNot(HaveOccurred())
Expect(cpu.User).To(Equal(uint64(25)))
})
It("ignores empty lines", func() {
statContents := []byte("cpu ")
err := ioutil.WriteFile(statFile, statContents, 0644)
Expect(err).ToNot(HaveOccurred())
err = cpu.Get()
Expect(err).ToNot(HaveOccurred())
Expect(cpu.User).To(Equal(uint64(0)))
})
})