Thanks for the help!

So, a copy of the pointer to the Transport used to initialize 
DefaultTransport would be the same, global instance of the Transport?

Does that mean that every time I instantiate a new client, I am using the 
same Transport?

On Wednesday, October 17, 2018 at 11:35:52 AM UTC-5, Burak Serdar wrote:
>
> On Wed, Oct 17, 2018 at 10:30 AM Kyle Butz <kyle...@gmail.com 
> <javascript:>> wrote: 
> > 
> > Hi All! 
> > 
> > I'm having trouble understanding whether a new http.Client{} with no 
> Transport set will use a new copy of DefaultTransport, or the global? 
> > 
> > From client.go: 
> > 
> > func (c *Client) transport() RoundTripper { 
> >    if c.Transport != nil { 
> >       return c.Transport 
> >    } 
> >    return DefaultTransport 
> > } 
> > 
> > DefaultTransport's definition from transport.go, as a pointer to a 
> Transport struct: 
> > 
> > var DefaultTransport RoundTripper = &Transport{ 
> >  Proxy: ProxyFromEnvironment, 
> >  DialContext: (&net.Dialer{ 
> >  Timeout: 30 * time.Second, 
> >  KeepAlive: 30 * time.Second, 
> >  DualStack: true, 
> >  }).DialContext, 
> >  MaxIdleConns: 100, 
> >  IdleConnTimeout: 90 * time.Second, 
> >  TLSHandshakeTimeout: 10 * time.Second, 
> >  ExpectContinueTimeout: 1 * time.Second, 
> > } 
> > 
> > 
> > It looks like transport() is returning a RoundTripper by value. Does 
> that mean that "return DefaultTransport" returns a new copy of 
> DefaultTransport, or just a copy of a pointer to the global 
> DefaultTransport defined in transport.go? 
>
>
> DefaultTransport is a pointer to a Transport, so when transport() 
> returns DefaultTransport, it returns an interface containing a copy of 
> the pointer to the Transport used to initialize DefaultTransport. 
>
> > 
> > Thanks for any tips! 
> > Kyle 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "golang-nuts" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to golang-nuts...@googlegroups.com <javascript:>. 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to