Golang: fix goroutine leak issue (#613)

* fix goroutine leak

* test version

* Revert "test version"

This reverts commit 23da93ce6e7d01ab15884edbb2b8a80a5e7e46a9.

* fix: correct spell errors

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>

---------

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
Co-authored-by: bo.jiang03 <bo.jiang03@mihoyo.com>
Co-authored-by: Li Zhanhui <lizhanhui@gmail.com>
diff --git a/golang/client.go b/golang/client.go
index 0a7defa..45e4b54 100644
--- a/golang/client.go
+++ b/golang/client.go
@@ -102,6 +102,11 @@
 	cs.cli.log.Infof("defaultClientSession is startUp! endpoints=%v", cs.endpoints)
 	go func() {
 		for {
+			select {
+			case <-cs.cli.done:
+				return
+			default:
+			}
 			// ensure that observer is present, if not wait for it to be regenerated on publish.
 			observer, acquired_observer := cs._acquire_observer()
 			if !acquired_observer {