This is because your conn variable is probably of the type net.Conn (an interface) rather than *net.TCPConn, so the compiler doesn't know that the SetKeepAlive method is available. If you use a type assertion as djadala suggested: conn.(*net.TCPConn).SetKeepAlive then you are telling the compiler that the value in the conn variable is actually a TCP connection and so the SetKeepAlive method becomes available. This will panic if the conn variable does not actually contain a *net.TCPConn.
On Tue, Jul 26, 2016 at 12:09 AM <djad...@gmail.com> wrote: > try conn.(*TCPConn <https://golang.org/pkg/net/#TCPConn>).SetKeepAlive > > On Tuesday, July 26, 2016 at 10:04:41 AM UTC+3, EdgarAlejandro Vintimilla > wrote: >> >> >> >> >> when I use the conn.SetKeepAlive i get this error: reference to undefined >> field or method ‘SetKeepAlive’ >> >> https://golang.org/pkg/net/#TCPConn.SetKeepAlive >> >> why? >> >> but If I use conn.SetReadDeadline it works ok >> >> https://golang.org/pkg/net/#IPConn.SetReadDeadline >> > -- > 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. > -- 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.