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.Args0)

os.Exit(1)

}

service := os.Args1

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))

}

}

相关推荐
小溪学编程8 分钟前
Java ListIterator 接口详解:双向遍历与列表修改的利器
java·开发语言·windows
影视飓风TIM8 分钟前
C++11 新特性:Lambda表达式、std::function与std::bind
开发语言·c++
sbjdhjd13 分钟前
在 8 字符、字母数字过滤与 PHP 版本差异下复盘临时文件命令执行链 | (8字符绕过)
android·java·开发语言·安全·web安全·数据挖掘·php
统计学小王子44 分钟前
数学建模国赛倒计时 1 天 ——《统计模型精讲(逐步回归 R 语言实战篇)》
开发语言·数学建模·r语言
Johnston_man1 小时前
golang 安装 protoc、protoc-gen-go、protoc-gen-go-grpc、protoc-gen-grpc-gateway
后端·golang
ttwuai1 小时前
Go 后台接入单点登录后,JWT、菜单权限和接口 403 怎么验?
开发语言·后端·golang
qeen871 小时前
【C++】C++中的错误处理机制-异常
开发语言·c++·异常
步行cgn1 小时前
OCP开闭原则:面向对象设计的核心原则
java·开发语言·开闭原则
曹牧1 小时前
C#:模态对话框
开发语言·c#
en.en..1 小时前
Linux wait()函数(预防僵尸进程)
java·大数据·开发语言