• Go入门笔记-3 实现TCP服务器


    1、代码

    package main
    
    import (
    	"fmt"
    	"net"
    )
    
    func main() {
    	fmt.Println("Starting the server ...")
    	// 创建 listener
    	listener, err := net.Listen("tcp", "localhost:60000")
    	if err != nil {
    		fmt.Println("Error listening", err.Error())
    		return //终止程序
    	}
    	// 监听并接受来自客户端的连接
    	for {
    		conn, err := listener.Accept()
    		if err != nil {
    			fmt.Println("Error accepting", err.Error())
    			return // 终止程序
    		}
    		go doServerStuff(conn)
    	}
    }
    
    func doServerStuff(conn net.Conn) {
    	for {
    		buf := make([]byte, 512)
    		len, err := conn.Read(buf)
    		if err != nil {
    			fmt.Println("Error reading", err.Error())
    			return //终止程序
    		}
    		fmt.Printf("Received data: %v
    ", string(buf[:len]))
    	}
    }
    

    运行效果

      

    本博客是个人工作中记录,遇到问题可以互相探讨,没有遇到的问题可能没有时间去特意研究,勿扰。
    另外建了几个QQ技术群:
    2、全栈技术群:616945527,加群口令abc123
    2、硬件嵌入式开发: 75764412
    3、Go语言交流群:9924600

    闲置域名www.nsxz.com出售(等宽等高字符四字域名)。
  • 相关阅读:
    Windows安装Oracle
    MySQL索引的创建和使用
    使用TensorFlow进行中文情感分析
    gensim库word2vec使用
    软件测试理论
    产品经理
    产品经理
    产品经理
    职业规划及核心竞争力
    项目管理
  • 原文地址:https://www.cnblogs.com/zhaogaojian/p/15056507.html
Copyright © 2020-2023  润新知