如何减少CPU使用率?

I am developing application which monitors system related things CPU, RAM etc. Even with little data while testing I found whenever I run my code there is a spike in CPU usage usually by 30% for a second whenever its polling data and then goes back to normal. So is there any way to reduce this spike.

Here is the code:

package main

import (
    "fmt"
    "github.com/shirou/gopsutil/cpu"
    "github.com/shirou/gopsutil/mem"
    "github.com/shirou/gopsutil/process"
    "github.com/shirou/gopsutil/load"
    "github.com/shirou/gopsutil/disk"
    "github.com/shirou/gopsutil/host"
    "reflect"
    "time"
)

func main() {

    driveC := "C:"

    processor, _ := cpu.Times(false)
    memory,_ := mem.VirtualMemory()
    cpuPercent,_ := cpu.Percent(time.Second,false)



    fmt.Println(reflect.TypeOf(processor))
    fmt.Println(reflect.TypeOf(memory))
    fmt.Println(reflect.TypeOf(cpuPercent))


    fmt.Println("CPU")
    fmt.Println("CPU name",processor[0].CPU)
    fmt.Println("User time",processor[0].User)
    fmt.Println("Idle time",processor[0].Idle)
    fmt.Println("System time",processor[0].System)
    fmt.Println("Nice time",processor[0].Nice)
    fmt.Println("IOwait time",processor[0].Iowait)
    fmt.Println("Irq time",processor[0].Irq)
    fmt.Println("SoftIrq time",processor[0].Softirq)



    fmt.Println("CPU Percent",cpuPercent)
    //fmt.Println(memory.Total)


    infoStat, _ := cpu.Info()
    fmt.Printf("
")
    fmt.Println("--> Hardware Info with Context:  ", infoStat)

    procCount, _ := cpu.ProcInfo()
    fmt.Printf("
")
    fmt.Println("--> Process Count:  ", procCount)

    fmt.Println("-----------------DISK--------------------------------->")

    driveUsage, _ := disk.Usage(driveC)
    fmt.Printf("
")
    fmt.Println("--> Disk Usage for :", driveUsage)

    partitionInfo, _ := disk.Partitions(true)
    fmt.Printf("
")
    fmt.Println("--> Partitions :", partitionInfo)

    folderInfo, _ := disk.IOCounters("C:", "D:")
    //fmt.Printf("
Disk IO counter remaining
")
    fmt.Printf("
")
    fmt.Println("-->Disk IO counter :", folderInfo)

    fmt.Printf("Docker remaining
")
    fmt.Printf("
")

    fmt.Println("-----------------Host--------------------------------->")

    hostInfo, _ := host.Info()
    fmt.Printf("
")
    fmt.Println("--> Host Info :", hostInfo)

    /*userName, _ := host.Users()
    fmt.Printf("
")
    fmt.Println("--> Username :", userName)*/

    fmt.Println("-----------------Load--------------------------------->")

    avgLoad, _ := load.Avg()
    fmt.Printf("
")
    fmt.Println("--> Average Load :", avgLoad)

    avgMisc, _ := load.Misc()
    fmt.Printf("
")
    fmt.Println("--> Misc :", avgMisc)

    fmt.Println("-----------------RAM--------------------------------->")

    virtMemory, _ := mem.VirtualMemory()
    fmt.Printf("
")
    fmt.Println("--> Virtual Memory :", virtMemory)

    swapMemory, _ := mem.SwapMemory()
    fmt.Printf("
")
    fmt.Println("--> Swap Memory :", swapMemory)

    //fmt.Println("Process running list")
    //processList()

}

OS - Windows 10, Programming Language - Golang