mirror of https://github.com/golang/go.git
net: add Example for Unix dialer with context
Showing users how to accomplish this more easily is a compromise between doing nothing and adding a new API to the net package. Fixes #38506. Change-Id: I43f831cf94951c987cf3c8c1aa55f0012ee8034e Reviewed-on: https://go-review.googlesource.com/c/go/+/263417 Reviewed-by: Ian Lance Taylor <iant@golang.org> Trust: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
cb768c801a
commit
a29dd1f2bd
|
|
@ -55,6 +55,27 @@ func ExampleDialer() {
|
|||
}
|
||||
}
|
||||
|
||||
func ExampleDialer_unix() {
|
||||
// DialUnix does not take a context.Context parameter. This example shows
|
||||
// how to dial a Unix socket with a Context. Note that the Context only
|
||||
// applies to the dial operation; it does not apply to the connection once
|
||||
// it has been established.
|
||||
var d net.Dialer
|
||||
ctx, cancel := context.WithTimeout(context.Background(), time.Minute)
|
||||
defer cancel()
|
||||
|
||||
d.LocalAddr = nil // if you have a local addr, add it here
|
||||
raddr := net.UnixAddr{Name: "/path/to/unix.sock", Net: "unix"}
|
||||
conn, err := d.DialContext(ctx, "unix", raddr.String())
|
||||
if err != nil {
|
||||
log.Fatalf("Failed to dial: %v", err)
|
||||
}
|
||||
defer conn.Close()
|
||||
if _, err := conn.Write([]byte("Hello, socket!")); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func ExampleIPv4() {
|
||||
fmt.Println(net.IPv4(8, 8, 8, 8))
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue