mirror of
https://github.com/v2fly/v2ray-core.git
synced 2024-11-18 02:16:10 -05:00
improve fetch performance
This commit is contained in:
parent
f7d54d57c4
commit
4c63e9e168
@ -40,6 +40,12 @@ func (b *Buffer) Clear() *Buffer {
|
||||
return b
|
||||
}
|
||||
|
||||
func (b *Buffer) Reset() *Buffer {
|
||||
b.offset = defaultOffset
|
||||
b.Value = b.head
|
||||
return b
|
||||
}
|
||||
|
||||
// AppendBytes appends one or more bytes to the end of the buffer.
|
||||
func (b *Buffer) AppendBytes(bytes ...byte) *Buffer {
|
||||
b.Value = append(b.Value, bytes...)
|
||||
|
@ -333,11 +333,12 @@ func (this *Connection) updateTask() {
|
||||
|
||||
func (this *Connection) FetchInputFrom(conn net.Conn) {
|
||||
go func() {
|
||||
for {
|
||||
payload := alloc.NewBuffer()
|
||||
defer payload.Release()
|
||||
for {
|
||||
payload.Reset()
|
||||
nBytes, err := conn.Read(payload.Value)
|
||||
if err != nil {
|
||||
payload.Release()
|
||||
return
|
||||
}
|
||||
payload.Slice(0, nBytes)
|
||||
@ -346,7 +347,6 @@ func (this *Connection) FetchInputFrom(conn net.Conn) {
|
||||
} else {
|
||||
log.Info("KCP|Connection: Invalid response from ", conn.RemoteAddr())
|
||||
}
|
||||
payload.Release()
|
||||
}
|
||||
}()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user