go实现tcp客户端

package main

import (

"fmt"

"net"

"os"

"time"

)

func main() {

if len(os.Args) != 2 {

fmt.Fprintf(os.Stderr, "Usage: %s host:port\n", os.Args[0])

os.Exit(1)

}

service := os.Args[1]

conn, err := net.Dial("tcp", service)

if err != nil {

fmt.Fprintf(os.Stderr, "Error dialing: %s\n", err)

os.Exit(1)

}

defer conn.Close()

go func() {

t := time.NewTicker(time.Second)

defer t.Stop()

for {

<-t.C

conn.Write([]byte("Hello, server!\n"))

}

}()

buf := make([]byte, 512)

for {

n, err := conn.Read(buf)

if err != nil {

fmt.Fprintf(os.Stderr, "Error reading: %s\n", err)

os.Exit(1)

}

fmt.Print(string(buf[:n]))

}

}

相关推荐
小杰帅气9 分钟前
Tcp理解传输层
服务器·网络·tcp/ip
为你奋斗!25 分钟前
Playwright 录屏功能启用离线安装依赖pywin32 pillow
开发语言·chrome·python·语言模型·迁移学习
郝学胜-神的一滴25 分钟前
CMake:解锁C++跨平台工程构建的核心密钥
开发语言·c++·职场和发展
zh路西法25 分钟前
【宇树机器人强化学习】(二):ActorCritic网络和ActorCriticRecurrent网络的python实现与解析
开发语言·python·深度学习·机器学习·机器人
沐知全栈开发27 分钟前
MVC 控制器
开发语言
`Jay30 分钟前
高并发数据采集:隧道代理池架构设计与实现
爬虫·python·学习·golang·代理模式
wjs202430 分钟前
ECharts 交互组件:深入解析与实战应用
开发语言
!chen32 分钟前
C# + ViewFaceCore 快速实现高精度人脸识别
开发语言·c#
佑白雪乐33 分钟前
C++标准总结+VSCode使用+MinGW
开发语言·c++·vscode
AsDuang38 分钟前
Python 3.12 MagicMethods - 50 - __lshift__
开发语言·python