diff options
author | Erik Dubbelboer <erik@dubbelboer.com> | 2020-06-06 15:57:38 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-06 15:57:38 +0200 |
commit | cc9db3ab20c6ef5409d71959c8f9453f8e70565c (patch) | |
tree | ddd8b1e03d892bb89daf8801d725c9638cda8de4 /prefork | |
parent | Make the ErrNothingRead to be exposed. (#827) (diff) | |
download | fasthttp-cc9db3ab20c6ef5409d71959c8f9453f8e70565c.tar.gz fasthttp-cc9db3ab20c6ef5409d71959c8f9453f8e70565c.tar.bz2 fasthttp-cc9db3ab20c6ef5409d71959c8f9453f8e70565c.zip |
Try TravisCI Windows (#828)
* Try TravisCI Windows
* prefork is supported on windows with Reuseport=true
* Bit longer timeouts for tests
Diffstat (limited to 'prefork')
-rw-r--r-- | prefork/prefork.go | 9 | ||||
-rw-r--r-- | prefork/prefork_test.go | 6 |
2 files changed, 14 insertions, 1 deletions
diff --git a/prefork/prefork.go b/prefork/prefork.go index 0b31ef5..cf1ff9f 100644 --- a/prefork/prefork.go +++ b/prefork/prefork.go @@ -1,3 +1,5 @@ +// +build !windows + package prefork import ( @@ -22,7 +24,8 @@ var ( defaultLogger = Logger(log.New(os.Stderr, "", log.LstdFlags)) // ErrOverRecovery is returned when the times of starting over child prefork processes exceed // the threshold. - ErrOverRecovery = errors.New("exceeding the value of RecoverThreshold") + ErrOverRecovery = errors.New("exceeding the value of RecoverThreshold") + ErrOnlyReuseportOnWindows = errors.New("windows only supports Reuseport = true") ) // Logger is used for logging formatted messages. @@ -154,6 +157,10 @@ func (p *Prefork) doCommand() (*exec.Cmd, error) { func (p *Prefork) prefork(addr string) (err error) { if !p.Reuseport { + if runtime.GOOS == "windows" { + return ErrOnlyReuseportOnWindows + } + if err = p.setTCPListenerFiles(addr); err != nil { return } diff --git a/prefork/prefork_test.go b/prefork/prefork_test.go index 12f8445..f80c77a 100644 --- a/prefork/prefork_test.go +++ b/prefork/prefork_test.go @@ -1,3 +1,5 @@ +// +build !windows + package prefork import ( @@ -91,6 +93,10 @@ func Test_listen(t *testing.T) { } func Test_setTCPListenerFiles(t *testing.T) { + if runtime.GOOS == "windows" { + t.SkipNow() + } + p := &Prefork{} addr := getAddr() |