打卡go学习第一天

在这里插入图片描述

8.1
下面展示一些 代码

package mainimport ("fmt""net""os""time"
)type Clock struct {Name   stringAddr   string
}
func main() {clocks := []Clock{{Name: "New York", Addr: "localhost:8000"},{Name: "London", Addr: "localhost:8001"},{Name: "Tokyo", Addr: "localhost:8002"},}fmt.Printf("%-15s %s\n", "Location", "Time")for _, clock := range clocks {conn, err := net.Dial("tcp", clock.Addr)if err != nil {fmt.Fprintf(os.Stderr, "Error connecting to %s: %v\n", clock.Name, err)continue}defer conn.Close()// 读取服务器发送的时间var timeStr string_, err = fmt.Fscan(conn, &timeStr)if err != nil {fmt.Fprintf(os.Stderr, "Error reading time from %s: %v\n", clock.Name, err)continue}// 解析时间t, err := time.Parse(time.RFC3339, timeStr)if err != nil {fmt.Fprintf(os.Stderr, "Error parsing time from %s: %v\n", clock.Name, err)continue}fmt.Printf("%-15s %s\n", clock.Name, t.Format(time.RFC3339))}
}

8.2
下面展示一些 代码

package mainimport ("bufio""fmt""net""os""strings"
)func handleClient(conn net.Conn) {defer conn.Close()reader := bufio.NewReader(conn)writer := bufio.NewWriter(conn)for {// 读取客户端发送的命令cmd, err := reader.ReadString('\n')if err != nil {fmt.Println("Error reading command:", err)return}// 去除命令中的空白字符cmd = strings.TrimSpace(cmd)// 解析并处理命令switch cmd {case "cd":// 处理 cd 命令_, err := writer.WriteString("Change directory command executed.\n")if err != nil {fmt.Println("Error writing response:", err)return}writer.Flush()case "quit":// 处理退出命令returndefault:_, err := writer.WriteString("Unknown command.\n")if err != nil {fmt.Println("Error writing response:", err)return}writer.Flush()}}
}func main() {listener, err := net.Listen("tcp", ":2121")if err != nil {fmt.Println("Error starting server:", err)return}defer listener.Close()fmt.Println("Server started, waiting for connections...")for {conn, err := listener.Accept()if err != nil {fmt.Println("Error accepting connection:", err)continue}go handleClient(conn)}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/165424.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于深度学习网络的蔬菜水果种类识别算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1数据集准备 4.2构建深度学习模型 4.3模型训练 4.4模型评估 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 clc; clear; close all; wa…

如何更换微信公众号主体?

公众号迁移有什么作用?只能变更主体吗?微信公众平台的帐号迁移功能可将原公众号的粉丝、文章素材、违规记录、留言功能、名称等迁移至新的公众号。通过迁移可以实现公众号的公司主体变更、粉丝转移、开通留言功能、服务号转为订阅号等作用。因此不止局限…

CAD Exchanger SDK 3.22.0 Crack

Docker 映像、Autodesk Inventor 2022 支持以及从 CAD Exchanger 3.22.0 中的 CATIA 导入属性 使用 Docker 映像将您的软件运送到任何地方,独立于 Autodesk 软件读取 .ipt、.iam 文件,从 CATIA 探索机械、产品和自定义属性。 软件开发工具包产品更新发明…

使用 Rust 开发:以太坊与 Layer2 生态建设新趋势

Rust 是一种系统编程语言,以其出色的性能、内存安全和并发性而闻名,在区块链和 Web3 中广泛应用,大多数编程语言和开发框架都以 Rust 为核心,如 Polkadot、Solana、NEAR、Elrond(现名 MultiversX)、Hyperle…

华为云文件上传(单个上传和分段上传)

首先引入静态文件: 华为云官网提供js下载的链接 然后后端提供一个公用接口,返回华为云上传的基本配置: 官网提供的链接:华为云obs信息配置 一:单个上传 huaweiyunUpload (file, fileName, name, url, size, callb…

13.3测试用例进阶

一.测试对象划分 1.界面测试(参考软件规格说明书和UI视觉稿) a.什么是界面 1)WEB站(浏览器) 2)app 3)小程序 4)公众号 b.测试内容 1)界面内容显示的一致性,完整性,准确性,友好性.比如界面内容对屏幕大小的自适应,换行,内容是否全部清晰展示. 2)验证整个界面布局和排版…

设计模式_中介者模式

中介者模式 介绍 设计模式定义案例问题堆积在哪里解决办法中介者代替了多个对象之间的互动 使对象1 2 3 之间的互动 变为: 对象1->中介 对象2->中介 对象3->中介好友之间 约饭好友1 通知 好友2 -3 -4 等等加一个群 谁想吃饭就 通知一下 类图 代码 角色 …

【ROS 2 Humble】 Ubuntu 20.04(Focal)平台 源码安装

提问链接: https://answers.ros.org/questions/ —————————————— ROS 1 各版本支持截止时间查看 ROS 1 支持时间查看 链接 https://wiki.ros.org/Distributions ROS 2 各版本支持截止时间查看 ROS 2 版本支持时间查看 ROS 2 https://docs.ros.…

element-ui中表格树类型数据的显示

项目场景&#xff1a; 1&#xff1a;非懒加载的情况 1&#xff1a;效果展示 2&#xff1a;问题描述以及解决 1&#xff1a;图片展示 2&#xff1a;html <-- default-expand-all 代表默认展开 如果不展开删除就行 --> <el-tableref"refsTable"v-loadin…

高速DSP系统设计参考指南(六)锁相环(PLL)

&#xff08;六&#xff09;锁相环&#xff08;PLL&#xff09; 1.模拟锁相环2.数字锁相环3.PLL隔离技术 系统设计人员需要隔离PLL&#xff0c;使其免受内部和外部噪声的影响。PLL通常用作频率合成器&#xff0c;将输入时钟乘以一个整数。该整数是反馈计数器M除以输入计数器N的…

Pytorch搭建DTLN降噪算法

前面介绍了几种轻量级网路结构的降噪做法&#xff0c;本文介绍DTLN—一种时频双核心网络降噪做法。 AI-GruNet降噪算法 AI-CGNet降噪算法 AI-FGNet降噪算法 Pytorch搭建实虚部重建AI-GruNet降噪算法 一、模型结构 DTLN来自[2005.07551] Dual-Signal Transformation LSTM N…

EPLAN_008#3D布局图

一、新建页 多线原理图纸画好以后 打开布局空间导航器——右键——新建 二、插入箱柜 菜单栏——插入——箱柜 三、显示安装板 然后调整视角 四、插入线槽 菜单栏——插入——线槽——选择合适的线槽——确定 按A键可以切换线槽方向&#xff0c;如果位置不对&#xff0c;可以再…

尝试使用jmeter-maven-plugin

前提准备 1、maven项目 2、已安装JMeter、Jenkins、maven、jdk 环境要求&#xff1a; jmeter>5.6.2 maven >3.9 jdk>1.8 Jenkins ? 备注&#xff1a;jmeter-maven-plugin 无需下载&#xff0c;可查阅相关地址&#xff1a;GitHub - jmeter-maven-plugin/jmete…

高效恢复丢失的文件的10 款Android数据恢复工具

在当今快节奏的数字时代&#xff0c;从Android设备丢失重要数据可能是一场噩梦。 您需要一个可靠的恢复工具来取回您的数据&#xff0c;例如令人难忘的照片&#xff0c;重要的联系人&#xff0c;重要的工作文档等。 值得庆幸的是&#xff0c;有许多高效的Android数据恢复工具可…

什么是无磁远传水表?工作原理是怎样的?

无磁远传水表是一种新型的智能水表&#xff0c;与传统水表相比&#xff0c;它具有更高的精度和可靠性&#xff0c;并且可以实现远程读数和控制。那么&#xff0c;无磁远传水表的工作原理是怎样的呢?下面&#xff0c;小编来为大家介绍下什么是无磁水表?它的工作原理是怎样的&a…

npm ERR! node-sass@6.0.1 postinstall: `node scripts/build.js`

1.遇到的问题 vue npm install提示以下错误 2.首次尝试方法 尝试用下面的方式重新安装弄得-saas&#xff0c;结果不起作用 。 npm config set sass_binary_sitehttps://npm.taobao.org/mirrors/node-sass npm install node-sass 这时考虑降级node版本&#xff0c;node.js从…

【树莓派触摸屏等学习笔记】

前言 树莓派触摸屏 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、触摸屏硬件驱动 出现黑屏的时候&#xff0c;恢复一下txt config.txt 全屏显示 showFull Exec &#xff1a;自启动 surf 算法 特征点识别 算法的复杂度挺高的 特性树莓派强大…

N-128基于springboot,vue酒店管理系统

开发工具&#xff1a;IDEA 服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8 项目构建&#xff1a;maven 数据库&#xff1a;mysql5.7 系统分前后台&#xff0c;项目采用前后端分离 前端技术&#xff1a;vueelementUI 服务端技术&#xff1a;springbootmybatis 本系统功…

怎么恢复移走的u盘数据?可以尝试这三种方法

当意外移走U盘上的数据时&#xff0c;我们常常会感到焦虑和失望&#xff0c;特别是当这些数据对我们仍然重要时。不过&#xff0c;您不必完全放弃&#xff0c;因为本文将介绍一些方法&#xff0c;以帮助您恢复U盘上的重要数据。 图片来源于网络&#xff0c;如有侵权请告知 移走…

uniapp 安装 u-view 组件库

u-view 组件库安装教程&#xff1a;https://uviewui.com/components/install.html 注&#xff1a;以下使用 HBuilderx 安装 u-view 2.0 版本&#xff0c;不适用于其它版本。 1.安装 u-view 组件库 2、注册并登录 HBuilderx 账号&#xff0c;点击下载 u-view 组件库。 3、点击…