Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit5070c14

Browse files
committed
netconn.go: Cleanup contexts on close
Updates#255
1 parent642a013 commit5070c14

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

‎netconn.go‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,8 @@ func NetConn(ctx context.Context, c *Conn, msgType MessageType) net.Conn {
5050
writeMu:newMu(c),
5151
}
5252

53-
varwriteCancel context.CancelFunc
54-
nc.writeCtx,writeCancel=context.WithCancel(ctx)
55-
varreadCancel context.CancelFunc
56-
nc.readCtx,readCancel=context.WithCancel(ctx)
53+
nc.writeCtx,nc.writeCancel=context.WithCancel(ctx)
54+
nc.readCtx,nc.readCancel=context.WithCancel(ctx)
5755

5856
nc.writeTimer=time.AfterFunc(math.MaxInt64,func() {
5957
if!nc.writeMu.tryLock() {
@@ -98,11 +96,13 @@ type netConn struct {
9896
writeMu*mu
9997
writeExpiredint64
10098
writeCtx context.Context
99+
writeCancel context.CancelFunc
101100

102101
readTimer*time.Timer
103102
readMu*mu
104103
readExpiredint64
105104
readCtx context.Context
105+
readCancel context.CancelFunc
106106
readEOFedbool
107107
reader io.Reader
108108
}
@@ -111,7 +111,9 @@ var _ net.Conn = &netConn{}
111111

112112
func (nc*netConn)Close()error {
113113
nc.writeTimer.Stop()
114+
nc.writeCancel()
114115
nc.readTimer.Stop()
116+
nc.readCancel()
115117
returnnc.c.Close(StatusNormalClosure,"")
116118
}
117119

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp