File tree 2 files changed +7
-1
lines changed
2 files changed +7
-1
lines changed Original file line number Diff line number Diff line change @@ -90,6 +90,8 @@ func (c *Conn) heartbeating() {
90
90
ticker := time .NewTicker (heartBeatFrequency )
91
91
for c .Connected () {
92
92
msg , _ := createMessage (msgIntTypes [msgHeartbeat ], hbSequence )
93
+ hbSequence ++
94
+ logger ("HB message: " , string (msg ))
93
95
c .send (msg )
94
96
<- ticker .C
95
97
}
@@ -107,13 +109,15 @@ func (c *Conn) send(msg []byte) {
107
109
func (c * Conn ) sender () {
108
110
var err error
109
111
for msg := range c .sendChan {
112
+ logger ("Sending message " , string (msg ))
110
113
if c .stringMode {
111
114
err = websocket .Message .Send (c .connection , string (msg ))
112
115
} else {
113
116
err = websocket .Message .Send (c .connection , msg )
114
117
}
115
118
if err != nil {
116
119
logger ("Error when send message" , err .Error ())
120
+ c .breakChan <- struct {}{}
117
121
}
118
122
}
119
123
}
Original file line number Diff line number Diff line change @@ -379,6 +379,7 @@ func (w *Wango) receive(c *Conn) {
379
379
for {
380
380
err := websocket .Message .Receive (c .connection , & data )
381
381
if err != nil {
382
+ logger ("Message receiving error: " , err )
382
383
if err != io .EOF {
383
384
// Error receiving message
384
385
}
@@ -392,6 +393,7 @@ MessageLoop:
392
393
for {
393
394
select {
394
395
case <- c .breakChan :
396
+ logger ("breakChan signal received, will close connection." )
395
397
break MessageLoop
396
398
case data := <- dataChan :
397
399
msgType , msg , err := parseMessage (data )
@@ -745,7 +747,7 @@ func (w *Wango) deleteConnection(c *Conn) {
745
747
delete (w .connections , c .id )
746
748
w .connectionsLocker .Unlock ()
747
749
748
- c .subRequests .closeRequests ()
750
+ go c .subRequests .closeRequests ()
749
751
750
752
w .subscribersLocker .Lock ()
751
753
for _ , subscribers := range w .subscribers {
You can’t perform that action at this time.
0 commit comments