Files
electricity_bill_calc_service/global/context.go
T

17 lines
449 B
Go

package global
import (
"context"
"time"
)
// 生成一个超时时间为5秒的倍率的上下文,如果不传递任何值,默认生成6倍的上下文,即超时时间为30秒。
func TimeoutContext(multiply ...int64) (context.Context, context.CancelFunc) {
var ratio int64 = 6
if len(multiply) > 0 {
ratio = multiply[0]
}
timeout := time.Duration(ratio*5) * time.Second
return context.WithTimeout(context.Background(), timeout)
}