首页 > 其他 > 详细

go实现简单的tcp编程

时间:2019-07-31 01:23:26      阅读:91      评论:0      收藏:0      [点我收藏+]

服务端的代码

package main

import (
	"fmt"
	"net"
)

func main () {
	fmt.Println("start server...")

	//Listen来创建服务端
	ln, err := net.Listen("tcp", ":10010")

	if err != nil {
		fmt.Println("listen failed, err:", err)
		return
	}

	for {
		conn, err := ln.Accept()
		if err != nil {
			fmt.Println("accept failed, err:", err)
			continue
		}

		//开启新的gouroutine 去处理请求
		//每个请求开启一个goroutine
		go process(conn)
	}
}

func process (conn net.Conn) {
	defer conn.Close()

	for {
		buf := make([]byte, 512)
		_, err := conn.Read(buf)

		if err != nil {
			fmt.Println("read failed, err:", err)
			return
		}

		fmt.Println("read:", string(buf))
	}
}

  先编译,然后执行,开启服务端

  技术分享图片

 

  然后新开一个窗口,作为客户端请求

  技术分享图片

 

go实现简单的tcp编程

原文:https://www.cnblogs.com/zhangxiaoj/p/11273525.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!