Golang ialah bahasa pengaturcaraan dengan proses sambungan yang sangat cekap dan pantas, menjadikan Golang popular dalam pengaturcaraan rangkaian. Artikel ini akan memperkenalkan pengetahuan yang berkaitan tentang proses sambungan Golang.
1. Sambungan TCP
Golang mencapai fungsi sambungan berkelajuan tinggi dengan menggunakan protokol TCP untuk menyambung ke rangkaian. Langkah utama sambungan adalah seperti berikut:
package main import ( "fmt" "net" "os" ) func main() { service := "127.0.0.1:3333" tcpAddr, err := net.ResolveTCPAddr("tcp", service) checkError(err) conn, err := net.DialTCP("tcp", nil, tcpAddr) checkError(err) _, err = conn.Write([]byte("Hello, Golang!")) checkError(err) result := make([]byte, 256) n, err := conn.Read(result) checkError(err) fmt.Println(string(result[0:n])) os.Exit(0) } func checkError(err error) { if err != nil { fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) os.Exit(1) } }
Berbeza dengan sambungan TCP, Golang juga boleh menyambung ke rangkaian melalui protokol UDP. Langkah utama proses sambungan UDP adalah seperti berikut:
Tetapkan alamat IP pelayan dan nombor port Buat soket untuk menyambung ke pelayan; >Hantar data ;package main import ( "fmt" "net" "os" ) func main() { service := "127.0.0.1:3333" udpAddr, err := net.ResolveUDPAddr("udp", service) checkError(err) conn, err := net.DialUDP("udp", nil, udpAddr) checkError(err) _, err = conn.Write([]byte("Hello, Golang!")) checkError(err) result := make([]byte, 256) n, err := conn.Read(result) checkError(err) fmt.Println(string(result[0:n])) os.Exit(0) } func checkError(err error) { if err != nil { fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) os.Exit(1) } }
Atas ialah kandungan terperinci Pengenalan terperinci kepada pengetahuan berkaitan proses sambungan Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!