Start separate goroutine for multiplexed stream handling

This commit is contained in:
Elara 2023-01-03 01:02:48 -08:00
parent b656c69350
commit 94ec82c4a6

View File

@ -94,14 +94,18 @@ func startSocket(ctx context.Context, dev *infinitime.Device) error {
log.Fatal().Err(err).Msg("Error creating multiplexed session") log.Fatal().Err(err).Msg("Error creating multiplexed session")
} }
go func() {
for { for {
conn, err := sess.Accept() conn, err := sess.Accept()
if err != nil { if errors.Is(err, io.EOF) {
break
} else if err != nil {
log.Fatal().Err(err).Msg("Error accepting stream") log.Fatal().Err(err).Msg("Error accepting stream")
} }
go srv.ServeOne(ctx, conn) go srv.ServeOne(ctx, conn)
} }
}()
} }
}() }()