mirror of
https://github.com/lkmio/lkm.git
synced 2025-11-03 03:24:04 +08:00
fix: 关闭sink, 异步发包协程未退出
This commit is contained in:
@@ -136,6 +136,8 @@ func (s *BaseSink) SetID(id SinkID) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *BaseSink) doAsyncWrite() {
|
func (s *BaseSink) doAsyncWrite() {
|
||||||
|
defer s.existed.Store(true)
|
||||||
|
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-s.cancelCtx.Done():
|
case <-s.cancelCtx.Done():
|
||||||
@@ -145,8 +147,6 @@ func (s *BaseSink) doAsyncWrite() {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
s.existed.Store(true)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *BaseSink) EnableAsyncWriteMode(queueSize int) {
|
func (s *BaseSink) EnableAsyncWriteMode(queueSize int) {
|
||||||
@@ -263,6 +263,10 @@ func (s *BaseSink) Close() {
|
|||||||
s.Conn.Close()
|
s.Conn.Close()
|
||||||
s.Conn = nil
|
s.Conn = nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if s.cancelCtx != nil {
|
||||||
|
s.cancelFunc()
|
||||||
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
// 已经关闭或Sink未添加到任何队列, 不做处理
|
// 已经关闭或Sink未添加到任何队列, 不做处理
|
||||||
|
|||||||
Reference in New Issue
Block a user