refactor makelisteners

This commit is contained in:
smallnest
2017-10-27 09:28:43 +08:00
parent 9f763e876e
commit a93e1c4be0
11 changed files with 103 additions and 155 deletions

23
server/listener_unix.go Normal file
View File

@@ -0,0 +1,23 @@
// +build !windows
package server
import (
reuseport "github.com/kavu/go_reuseport"
)
func init() {
makeListeners["reuseport"] = reuseportMakeListener
}
func reuseportMakeListener func(s *Server, address string) (ln net.Listener, err error) {
if validIP4(address) {
network = "tcp4"
} else {
network = "tcp6"
}
return reuseport.NewReusablePortListener(network, address)
}