]> 127.0.0.1 Git - part/.git/commitdiff
101
authorqydysky <qydysky@foxmail.com>
Fri, 15 Jan 2021 05:51:55 +0000 (13:51 +0800)
committerqydysky <qydysky@foxmail.com>
Fri, 15 Jan 2021 05:51:55 +0000 (13:51 +0800)
Reqf.go
msgq/Msgq.go

diff --git a/Reqf.go b/Reqf.go
index d7ebb27d63215bf2526151c61fcb08dc74c5c068..53d4b35b636e69a054aa4f070333f6c616cf2e4e 100644 (file)
--- a/Reqf.go
+++ b/Reqf.go
@@ -177,11 +177,17 @@ func (this *req) Reqf_1(val Rval) (error) {
             if compress_type := resp.Header[`Content-Encoding`];compress_type!=nil{
                 switch compress_type[0]{
                 case `br`:
-                    if this.Respon,err = compress.UnBr(this.Respon);err != nil {return err}
+                    if tmp,err := compress.UnBr(this.Respon);err != nil {
+                        return err
+                    }else{this.Respon = append([]byte{},tmp...)}
                 case `gzip`:
-                    if this.Respon,err = compress.UnGzip(this.Respon);err != nil {return err}
+                    if tmp,err := compress.UnGzip(this.Respon);err != nil {
+                        return err
+                    }else{this.Respon = append([]byte{},tmp...)}
                 case `deflate`:
-                    if this.Respon,err = compress.UnFlate(this.Respon);err != nil {return err}
+                    if tmp,err := compress.UnFlate(this.Respon);err != nil {
+                        return err
+                    }else{this.Respon = append([]byte{},tmp...)}
                 default:
                 }
             }
index 38512862bf0e136678613024bb1b5422dd3d6cdf..f940eb6b9483820c145d5cde0a27807014c89567 100644 (file)
@@ -3,6 +3,7 @@ package part
 import (
        "sync"
        "time"
+       "runtime"
        "container/list"
 )
 
@@ -44,6 +45,7 @@ func (m *Msgq) Push(msg interface{}) {
                m.wait_push <- struct{}{}
        }
        if pull_num < 1 {<- m.ticker.C}
+       runtime.Gosched()
        select {
        case <- m.wait_push:
        case <- m.ticker.C: