conn

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 13, 2022 License: MIT Imports: 17 Imported by: 0

Documentation

Overview

conn defines the Conn object which packs system file descriptor and performs reading or writing operations.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AsyncWriteConn

type AsyncWriteConn struct {
	*Conn
	CallBack iface.AsyncCallback
}

func (*AsyncWriteConn) Write

func (that *AsyncWriteConn) Write(data []byte) (n int, err error)

type AsyncWritevConn

type AsyncWritevConn struct {
	*Conn
	CallBack iface.AsyncCallback
}

func (*AsyncWritevConn) Write

func (that *AsyncWritevConn) Write(data []byte) (n int, err error)

type Conn

type Conn struct {
	Fd              int
	Poller          *poll.Poller
	Sock            syscall.Sockaddr
	AddrLocal       net.Addr
	AddrRemote      net.Addr
	OutBuffer       *elastic.Buffer
	InBuffer        elastic.RingBuffer
	Buffer          []byte
	IsUDP           bool
	Ctx             *iface.Context
	Opened          bool
	Handler         iface.IEventHandler
	WritevChunkSize int
	ErrChan         chan error
	// contains filtered or unexported fields
}

func NewTCPConn

func NewTCPConn(fd int) (c *Conn)

new Conn

func (*Conn) Adapt

func (that *Conn) Adapt(adapter iface.ConnAdapter, callback ...iface.AsyncCallback) net.Conn

Adapt adapts asyncwrite or writev to net.Conn interface.

func (*Conn) AsyncClose added in v1.0.1

func (that *Conn) AsyncClose()

func (*Conn) AsyncReadFromFd added in v1.0.1

func (that *Conn) AsyncReadFromFd()

func (*Conn) AsyncReadFromFdAndWait added in v1.1.0

func (that *Conn) AsyncReadFromFdAndWait(wg *sync.WaitGroup)

func (*Conn) AsyncWrite

func (that *Conn) AsyncWrite(data []byte, cb ...iface.AsyncCallback) error

func (*Conn) AsyncWriteToFd added in v1.0.1

func (that *Conn) AsyncWriteToFd()

func (*Conn) AsyncWriteToFdAndWait added in v1.1.0

func (that *Conn) AsyncWriteToFdAndWait(wg *sync.WaitGroup)

func (*Conn) AsyncWritev

func (that *Conn) AsyncWritev(bs [][]byte, cb ...iface.AsyncCallback) error

func (*Conn) Close

func (that *Conn) Close() (rerr error)

func (*Conn) GetBufferFromPool

func (that *Conn) GetBufferFromPool() []byte

func (*Conn) GetFd

func (that *Conn) GetFd() int

public methods

func (*Conn) InitContext

func (that *Conn) InitContext(tconf *tls.Config, adapter iface.ConnAdapter, callback ...iface.AsyncCallback) (err error)

func (*Conn) LocalAddr

func (that *Conn) LocalAddr() net.Addr

methods for net.Conn interface

func (*Conn) Open

func (that *Conn) Open() error

func (*Conn) PutBufferToPool

func (that *Conn) PutBufferToPool(buf []byte)

func (*Conn) Read

func (that *Conn) Read(p []byte) (n int, err error)

func (*Conn) ReadFromFd

func (that *Conn) ReadFromFd() error

func (*Conn) RemoteAddr

func (that *Conn) RemoteAddr() net.Addr

func (*Conn) SetConn

func (that *Conn) SetConn(co *ConnOpts)

func (*Conn) SetDeadline

func (that *Conn) SetDeadline(t time.Time) error

func (*Conn) SetReadDeadline

func (that *Conn) SetReadDeadline(t time.Time) error

func (*Conn) SetWriteDeadline

func (that *Conn) SetWriteDeadline(t time.Time) error

func (*Conn) Write

func (that *Conn) Write(p []byte) (int, error)

func (*Conn) WriteToFd

func (that *Conn) WriteToFd() error

func (*Conn) Writev

func (that *Conn) Writev(bs [][]byte) (int, error)

type ConnOpts

type ConnOpts struct {
	Poller            *poll.Poller
	SockAddr          syscall.Sockaddr
	LocalAddr         net.Addr
	RemoteAddr        net.Addr
	Handler           iface.IEventHandler
	WriteBufferCap    int
	WritevChunkSize   int
	SocketWriteBuffer int
	SocketReadBuffer  int
}

type WritevConn

type WritevConn struct {
	*Conn
}

func (*WritevConn) Write

func (that *WritevConn) Write(data []byte) (n int, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL