Fix issue with reader disconnecting due to closd channel
This commit is contained in:
@@ -63,12 +63,20 @@ func main() {
|
|||||||
// listener.initialize()
|
// listener.initialize()
|
||||||
|
|
||||||
var ws WSConnection
|
var ws WSConnection
|
||||||
|
read := make(chan string)
|
||||||
go func() {
|
go func() {
|
||||||
for {
|
for {
|
||||||
ws := WSConnection{
|
ws = WSConnection{
|
||||||
url: WEBSOCKET_SERVER,
|
url: WEBSOCKET_SERVER,
|
||||||
}
|
}
|
||||||
ws.Open()
|
ws.Open()
|
||||||
|
for {
|
||||||
|
msg, ok := <-ws.ReadChan
|
||||||
|
if !ok {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
read <- msg
|
||||||
|
}
|
||||||
<-ws.Dead
|
<-ws.Dead
|
||||||
log.Printf("Reconnecting in 5 seconds...")
|
log.Printf("Reconnecting in 5 seconds...")
|
||||||
time.Sleep(5 * time.Second)
|
time.Sleep(5 * time.Second)
|
||||||
@@ -78,7 +86,7 @@ func main() {
|
|||||||
sem := make(chan struct{}, 4)
|
sem := make(chan struct{}, 4)
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case event := <-ws.ReadChan:
|
case event := <-read:
|
||||||
eventCopy := event
|
eventCopy := event
|
||||||
status := make(chan error)
|
status := make(chan error)
|
||||||
sem <- struct{}{}
|
sem <- struct{}{}
|
||||||
|
Reference in New Issue
Block a user