d7b3e8c0094870b9
340 天前
package main
import (
"fmt"
"net"
"sync"
)
func connectToServer(serverAddr string, wg *sync.WaitGroup) {
defer wg.Done()
// 与服务器建立连接
conn, err := net.Dial("tcp", serverAddr)
if err != nil {
fmt.Printf("Cannot connect to server %s: %v\n", serverAddr, err)
return
}
defer conn.Close()
fmt.Printf("Connected to server: %s\n", serverAddr)
// 这里可以添加与服务器通信的代码
// ...
}
func main() {
var wg sync.WaitGroup
// 服务器 1 地址
server1 := "server1:8080"
// 服务器 2 地址
server2 := "server2:8080"
// 同时建立两个连接
wg.Add(2)
go connectToServer(server1, &wg)
go connectToServer(server2, &wg)
// 等待所有 Goroutines 完成
wg.Wait()
fmt.Println("Both connections established")
}