Merge pull request #286 from panjf2000/dev

ver: release v2.8.0
This commit is contained in:
Andy Pan 2023-07-01 21:25:48 +08:00 committed by GitHub
commit 1411ae852f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 29 additions and 22 deletions

View File

@ -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)

View File

@ -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

View File

@ -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()

View File

@ -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)
}