| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package gopool
- import (
- "time"
- "github.com/panjf2000/ants/v2"
- )
- var (
- // Init a instance pool when importing ants.
- defaultPool, _ = ants.NewPool(ants.DefaultAntsPoolSize, ants.WithExpiryDuration(10*time.Second))
- )
- // Logger is used for logging formatted messages.
- type Logger interface {
- // Printf must have the same semantics as log.Printf.
- Printf(format string, args ...interface{})
- }
- // Submit submits a task to pool.
- func Submit(task func()) error {
- return defaultPool.Submit(task)
- }
- // Running returns the number of the currently running goroutines.
- func Running() int {
- return defaultPool.Running()
- }
- // Cap returns the capacity of this default pool.
- func Cap() int {
- return defaultPool.Cap()
- }
- // Free returns the available goroutines to work.
- func Free() int {
- return defaultPool.Free()
- }
- // Release Closes the default pool.
- func Release() {
- defaultPool.Release()
- }
- // Reboot reboots the default pool.
- func Reboot() {
- defaultPool.Reboot()
- }
|