perf: server 包 websocket SetReadDeadline 优化
This commit is contained in:
parent
637ae27882
commit
dc3c7d2eea
|
@ -310,10 +310,16 @@ func (slf *Server) Run(addr string) error {
|
|||
conn.Close(e)
|
||||
}
|
||||
}()
|
||||
var deadline = times.Zero
|
||||
if slf.websocketReadDeadline > 0 {
|
||||
deadline = time.Now().Add(slf.websocketReadDeadline)
|
||||
}
|
||||
for !conn.IsClosed() {
|
||||
if err := ws.SetReadDeadline(super.If(slf.websocketReadDeadline <= 0, times.Zero, time.Now().Add(slf.websocketReadDeadline))); err != nil {
|
||||
if slf.websocketReadDeadline > 0 {
|
||||
if err := ws.SetReadDeadline(deadline); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
messageType, packet, readErr := ws.ReadMessage()
|
||||
if readErr != nil {
|
||||
if conn.IsClosed() {
|
||||
|
|
Loading…
Reference in New Issue