2024-12-13 15:01:40 +08:00
|
|
|
package tool
|
2024-03-22 18:05:47 +08:00
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
|
|
|
func Timeout(seconds ...int) context.Context {
|
|
|
|
second := 30
|
|
|
|
if len(seconds) > 0 && seconds[0] > 0 {
|
|
|
|
second = seconds[0]
|
|
|
|
}
|
|
|
|
|
|
|
|
ctx, _ := context.WithTimeout(context.Background(), time.Duration(second)*time.Second)
|
|
|
|
|
|
|
|
return ctx
|
|
|
|
}
|
|
|
|
|
|
|
|
func TimeoutCtx(ctx context.Context, seconds ...int) context.Context {
|
|
|
|
second := 30
|
|
|
|
if len(seconds) > 0 && seconds[0] > 0 {
|
|
|
|
second = seconds[0]
|
|
|
|
}
|
|
|
|
|
|
|
|
timeout, _ := context.WithTimeout(ctx, time.Duration(second)*time.Second)
|
|
|
|
|
|
|
|
return timeout
|
|
|
|
}
|