Apply .gitignore rules
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
package startMgr
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"time"
|
||||
|
||||
"goutil/logUtil"
|
||||
"goutil/runtimeUtil"
|
||||
)
|
||||
|
||||
// 模块类型
|
||||
// 具体有哪些模块类型需要对应的程序自己定义
|
||||
type ModuleType int
|
||||
|
||||
// 方法项定义
|
||||
type FuncItem struct {
|
||||
// 方法名称
|
||||
Name string
|
||||
|
||||
// 模块类型
|
||||
ModuleType ModuleType
|
||||
|
||||
// 方法定义
|
||||
Definition func() error
|
||||
}
|
||||
|
||||
// 调用方法
|
||||
// 返回值:
|
||||
// 错误对象
|
||||
func (this *FuncItem) Call() error {
|
||||
err := this.Definition()
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
// 调用方法
|
||||
// operateName:操作名称
|
||||
// 返回值:
|
||||
// 错误对象
|
||||
func (this *FuncItem) Call2(operateName string) error {
|
||||
startTime := time.Now()
|
||||
defer func() {
|
||||
logUtil.InfoLog(fmt.Sprintf("%s %s 执行耗时:%v 执行后内存总占用:%vMB", this.Name, operateName, time.Since(startTime).String(), runtimeUtil.GetMemSize()/1024.0/1024.0))
|
||||
}()
|
||||
|
||||
logUtil.InfoLog(fmt.Sprintf("%v %s 开始执行", this.Name, operateName))
|
||||
err := this.Definition()
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
// 新建函数项
|
||||
// name:模块名
|
||||
// moduleType:对应的模块类型
|
||||
// definition:目标处理函数
|
||||
func NewFuncItem(name string, moduleType ModuleType, definition func() error) *FuncItem {
|
||||
return &FuncItem{
|
||||
Name: name,
|
||||
ModuleType: moduleType,
|
||||
Definition: definition,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user