|
123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package worker
-
- import (
- "encoding/json"
- "runtime"
- )
-
- // Job handler
- type JobHandler func(Job) error
-
- type JobFunc func(Job) ([]byte, error)
-
- // The definition of the callback function.
- type jobFunc struct {
- f JobFunc
- timeout uint32
- }
-
- // Map for added function.
- type jobFuncs map[string]*jobFunc
-
- type systemInfo struct {
- GOOS, GOARCH, GOROOT, Version string
- NumCPU, NumGoroutine int
- NumCgoCall int64
- }
-
- func SysInfo(job Job) ([]byte, error) {
- return json.Marshal(&systemInfo{
- GOOS: runtime.GOOS,
- GOARCH: runtime.GOARCH,
- GOROOT: runtime.GOROOT(),
- Version: runtime.Version(),
- NumCPU: runtime.NumCPU(),
- NumGoroutine: runtime.NumGoroutine(),
- NumCgoCall: runtime.NumCgoCall(),
- })
- }
-
- var memState runtime.MemStats
-
- func MemInfo(job Job) ([]byte, error) {
- runtime.ReadMemStats(&memState)
- return json.Marshal(&memState)
- }
|