mirror of https://github.com/panjf2000/ants.git
commit
1411ae852f
|
@ -7,22 +7,18 @@ on:
|
|||
- dev
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '.github/FUNDING.yml'
|
||||
- '.github/release-drafter.yml'
|
||||
- '.github/ISSUE_TEMPLATE/*'
|
||||
- '.github/workflows/pull-request.yml'
|
||||
- '.github/workflows/release-drafter.yml'
|
||||
- '**.yml'
|
||||
- '**.yaml'
|
||||
- '!.github/workflows/codeql.yml'
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- dev
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '.github/FUNDING.yml'
|
||||
- '.github/release-drafter.yml'
|
||||
- '.github/ISSUE_TEMPLATE/*'
|
||||
- '.github/workflows/pull-request.yml'
|
||||
- '.github/workflows/release-drafter.yml'
|
||||
- '**.yml'
|
||||
- '**.yaml'
|
||||
- '!.github/workflows/codeql.yml'
|
||||
schedule:
|
||||
# ┌───────────── minute (0 - 59)
|
||||
# │ ┌───────────── hour (0 - 23)
|
||||
|
|
|
@ -7,26 +7,20 @@ on:
|
|||
- dev
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '.github/FUNDING.yml'
|
||||
- '.github/release-drafter.yml'
|
||||
- '.github/ISSUE_TEMPLATE/*'
|
||||
- '.github/workflows/codeql.yml'
|
||||
- '.github/workflows/pull-request.yml'
|
||||
- '.github/workflows/release-drafter.yml'
|
||||
- '**.yml'
|
||||
- '**.yaml'
|
||||
- 'examples/*'
|
||||
- '!.github/workflows/test.yml'
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- dev
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '.github/FUNDING.yml'
|
||||
- '.github/release-drafter.yml'
|
||||
- '.github/ISSUE_TEMPLATE/*'
|
||||
- '.github/workflows/codeql.yml'
|
||||
- '.github/workflows/pull-request.yml'
|
||||
- '.github/workflows/release-drafter.yml'
|
||||
- '**.yml'
|
||||
- '**.yaml'
|
||||
- 'examples/*'
|
||||
- '!.github/workflows/test.yml'
|
||||
|
||||
env:
|
||||
GO111MODULE: on
|
||||
|
|
5
ants.go
5
ants.go
|
@ -123,6 +123,11 @@ func Release() {
|
|||
defaultAntsPool.Release()
|
||||
}
|
||||
|
||||
// ReleaseTimeout is like Release but with a timeout, it waits all workers to exit before timing out.
|
||||
func ReleaseTimeout(timeout time.Duration) error {
|
||||
return defaultAntsPool.ReleaseTimeout(timeout)
|
||||
}
|
||||
|
||||
// Reboot reboots the default pool.
|
||||
func Reboot() {
|
||||
defaultAntsPool.Reboot()
|
||||
|
|
12
ants_test.go
12
ants_test.go
|
@ -973,3 +973,15 @@ func TestReleaseTimeout(t *testing.T) {
|
|||
err = pf.ReleaseTimeout(2 * time.Second)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
|
||||
func TestDefaultPoolReleaseTimeout(t *testing.T) {
|
||||
Reboot()
|
||||
for i := 0; i < 5; i++ {
|
||||
_ = Submit(func() {
|
||||
time.Sleep(time.Second)
|
||||
})
|
||||
}
|
||||
assert.NotZero(t, Running())
|
||||
err := ReleaseTimeout(2 * time.Second)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue