type net/http/internal/http2.ClientConn
64 uses
net/http/internal/http2 (current package)
client_conn_pool.go#L24: conns map[string][]*ClientConn // key is host:port
client_conn_pool.go#L26: keys map[*ClientConn][]string
client_conn_pool.go#L30: func (p *clientConnPool) GetClientConn(req *ClientRequest, addr string) (*ClientConn, error) {
client_conn_pool.go#L39: func (p *clientConnPool) getClientConn(req *ClientRequest, addr string, dialOnMiss bool) (*ClientConn, error) {
client_conn_pool.go#L95: res *ClientConn // valid after done is closed
client_conn_pool.go#L190: func (p *clientConnPool) addConnLocked(key string, cc *ClientConn) {
client_conn_pool.go#L195: p.conns = make(map[string][]*ClientConn)
client_conn_pool.go#L198: p.keys = make(map[*ClientConn][]string)
client_conn_pool.go#L204: func (p *clientConnPool) MarkDead(cc *ClientConn) {
client_conn_pool.go#L238: func filterOutClientConn(in []*ClientConn, exclude *ClientConn) []*ClientConn {
client_conn_pool.go#L258: func (p noDialClientConnPool) GetClientConn(req *ClientRequest, addr string) (*ClientConn, error) {
transport.go#L79: newclientconn func(*ClientConn)
transport.go#L132: type ClientConn struct {
transport.go#L229: cc *ClientConn
transport.go#L546: func (t *Transport) dialClientConn(ctx context.Context, addr string, singleUse bool) (*ClientConn, error) {
transport.go#L613: func (t *Transport) newClientConn(c net.Conn, singleUse bool, internalStateHook func()) (*ClientConn, error) {
transport.go#L615: cc := &ClientConn{
transport.go#L705: func (cc *ClientConn) healthCheck() {
transport.go#L722: func (cc *ClientConn) SetDoNotReuse() {
transport.go#L733: func (cc *ClientConn) CanTakeNewRequest() bool {
transport.go#L742: func (cc *ClientConn) ReserveNewRequest() bool {
transport.go#L786: func (cc *ClientConn) State() ClientConnState {
transport.go#L813: func (cc *ClientConn) idleState() clientConnIdleState {
transport.go#L819: func (cc *ClientConn) idleStateLocked() (st clientConnIdleState) {
transport.go#L856: func (cc *ClientConn) isUsableLocked() bool {
transport.go#L871: func (cc *ClientConn) canReserveLocked() bool {
transport.go#L883: func (cc *ClientConn) currentRequestCountLocked() int {
transport.go#L887: func (cc *ClientConn) canTakeNewRequestLocked() bool {
transport.go#L893: func (cc *ClientConn) availableLocked() int {
transport.go#L902: func (cc *ClientConn) tooIdleLocked() bool {
transport.go#L916: func (cc *ClientConn) onIdleTimeout() {
transport.go#L920: func (cc *ClientConn) closeConn() {
transport.go#L929: func (cc *ClientConn) forceCloseConn() {
transport.go#L939: func (cc *ClientConn) closeIfIdle() {
transport.go#L957: func (cc *ClientConn) isDoNotReuseAndIdle() bool {
transport.go#L966: func (cc *ClientConn) Shutdown(ctx context.Context) error {
transport.go#L1003: func (cc *ClientConn) sendGoAway() error {
transport.go#L1029: func (cc *ClientConn) closeForError(err error) {
transport.go#L1040: func (cc *ClientConn) goAwayAndClose(code ErrCode) {
transport.go#L1070: func (cc *ClientConn) Close() error {
transport.go#L1076: func (cc *ClientConn) closeForLostPing() {
transport.go#L1088: func (cc *ClientConn) responseHeaderTimeout() time.Duration {
transport.go#L1112: func (cc *ClientConn) decrStreamReservations() {
transport.go#L1118: func (cc *ClientConn) decrStreamReservationsLocked() {
transport.go#L1124: func (cc *ClientConn) RoundTrip(req *ClientRequest) (*ClientResponse, error) {
transport.go#L1128: func (cc *ClientConn) roundTrip(req *ClientRequest, streamf func(*clientStream)) (*ClientResponse, error) {
transport.go#L1565: func (cc *ClientConn) awaitOpenSlotForStreamLocked(cs *clientStream) error {
transport.go#L1592: func (cc *ClientConn) writeHeaders(streamID uint32, endStream bool, maxFrameSize int, hdrs []byte) error {
transport.go#L1849: func (cc *ClientConn) encodeTrailers(trailer Header) ([]byte, error) {
transport.go#L1879: func (cc *ClientConn) writeHeader(name, value string) {
transport.go#L1893: func (cc *ClientConn) addStreamLocked(cs *clientStream) {
transport.go#L1904: func (cc *ClientConn) forgetStreamID(id uint32) {
transport.go#L1935: cc *ClientConn
transport.go#L1939: func (cc *ClientConn) readLoop() {
transport.go#L2039: func (cc *ClientConn) countReadFrameError(err error) {
transport.go#L2863: func (cc *ClientConn) Ping(ctx context.Context) error {
transport.go#L2948: func (cc *ClientConn) writeStreamReset(streamID uint32, code ErrCode, ping bool, err error) {
transport.go#L2969: func (cc *ClientConn) logf(format string, args ...any) {
transport.go#L2973: func (cc *ClientConn) vlogf(format string, args ...any) {
transport.go#L3119: cc *ClientConn
transport.go#L3179: func (cc *ClientConn) maybeCallStateHook() {
transport.go#L3201: func traceGotConn(req *ClientRequest, cc *ClientConn, reused bool) {