optimization for default pool

This commit is contained in:
Andy Pan 2018-08-04 09:29:53 +08:00
parent 020959a1d5
commit 9af581c867
1 changed files with 20 additions and 7 deletions

27
ants.go
View File

@ -36,7 +36,26 @@ const (
)
// Init a instance pool when importing ants
var defaultAntsPool, _ = NewPool(DefaultAntsPoolSize)
var (
defaultAntsPool *Pool
err error
)
func init() {
defaultAntsPool, err = NewPool(DefaultAntsPoolSize)
if err != nil {
panic(err)
}
}
// Release Closed the default pool
func Release() {
defaultAntsPool.Release()
defaultAntsPool, err = NewPool(DefaultAntsPoolSize)
if err != nil {
panic(err)
}
}
// Submit submit a task to pool
func Submit(task f) error {
@ -58,12 +77,6 @@ func Free() int {
return defaultAntsPool.Free()
}
// Release Closed the default pool
func Release() {
defaultAntsPool.Release()
}
// Errors for the Ants API
var (
ErrInvalidPoolSize = errors.New("invalid size for pool")