25 lines
343 B
Go
25 lines
343 B
Go
package netconncancel
|
|
|
|
import (
|
|
"context"
|
|
"net"
|
|
)
|
|
|
|
type NetConnCancel struct {
|
|
Cancel context.CancelFunc
|
|
net.Conn
|
|
}
|
|
|
|
func New(netConn net.Conn, cancel context.CancelFunc) *NetConnCancel {
|
|
return &NetConnCancel{
|
|
Cancel: cancel,
|
|
Conn: netConn,
|
|
}
|
|
}
|
|
|
|
func (ncc *NetConnCancel) Close() error {
|
|
ncc.Cancel()
|
|
|
|
return ncc.Conn.Close()
|
|
}
|