变量go1 go 21

20230426 21. 单例模式

## 介绍 单例模式(Singleton),保证一个类仅有一个实例,并提供一个访问它的全局访问点。 通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自身负责保存它的唯一实例。这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法。 ......
20230426 模式 21

深入理解Go语言接口

# 1. 引言 接口是一种定义了软件组件之间交互规范的重要概念,其促进了代码的解耦、模块化和可扩展性,提供了多态性和抽象的能力,简化了依赖管理和替换,方便进行单元测试和集成测试。这些特性使得接口成为构建可靠、可维护和可扩展的软件系统的关键工具之一。 在现代编程语言中,接口是不可或缺的一个重要特性。本 ......
接口 语言

GO中字符串操作和转换简介

[toc] `go`中字符串是一种基本类型(string),是一个**不可改变的UTF-8**字符序列: - 一个ASCII码占用1个字节(8位); - 其它字符根据需要占用2-4个字节; # 字符串 字符串创建后,就不可修改; # 声明与初始化 `go`支持两种类型的字符串字面量: - 解释型字符 ......
字符串 字符 简介

std::thread 三:条件变量(condition_variable())

condition_variable 、 wait 、 notify_one 、 notify_all *:notify_one:通知(唤醒)一个线程 *:notify_all:通知(唤醒)多个线程 #include <iostream> #include <thread> #include <mu ......

Go 语言之 Shutdown 关机和fvbock/endless 重启

# Go 语言之 Shutdown 关机和fvbock/endless 重启 Shutdown 源码 ```go // Shutdown gracefully shuts down the server without interrupting any // active connections. ......
Shutdown endless 语言 fvbock Go

[机器人]FANUC---MODBUS机器人变量配置

1、设置机器人IP、主站IP如图1设置图1IP设置2、客服端、端口设置,图2。图2设置客户端3、设置读取当前用户坐标系X、Y、Z、RX、RY、RZ,图3。图3读取当前用户正交坐4、设置读取当前用户坐标系J1、J2、J3、J4、J5、J6,图4。图4读取当前用户关节坐标5、设置读取当前使用用户、工具坐 ......
机器人 机器 变量 MODBUS FANUC

Java 变量与基本数据类型

# Java 变量与基本数据类型 # 1. 变量是保存特定数据类型的值。变量必须先声明,后使用。变量表示内存中的一个存储区域。变量在同一个域中不可出现相同的变量名。 ## # 2. 程序中 + 号的作用 > ## 如果两边都是数值,进行加法运算 > > ## 如果左右一边有一方位字符串,则做拼接字符 ......
变量 类型 数据 Java

在Mac上编译可运行在Linux, Windows上的GO程序

编译运行在 amd64位 linux系统 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build 编译运行在 amd64位 windows系统 CGO_ENABLED=0 GOOS=windows go build ......
上编 Windows 程序 Linux Mac

GO通道:无缓冲通道与缓冲通道

转载请注明出处: 1.通道定义 在多个协程之间进行通信和管理,可以使用 Go 语言提供的通道(Channel)类型。通道是一种特殊的数据结构,可以在协程之间进行传递数据,从而实现协程之间的通信和同步。多个协程可以同时读写同一个通道,通过通道来进行数据的传递和共享。 通道遵循先入先出(First In ......
通道

GO 协程

转载请注明出处: 线程是进程中的一个实体,被系统独立调度和分派的基本单位。线程自己不拥有系统资源,只拥有运行中必不可少的资源。同一进程中的多个线程并发执行,这些线程共享进程所拥有的资源。 协程是一种比线程更加轻量级的存在,重要的是,协程不被操作系统内核管理,协程完全是由程序控制的,不需要手动创建和管 ......
GO

mysql -- 根据变量a的不同值设置变量b(case when + set)

需求: 根据 变量 @period_endtime 的不同值,设置相对应的 @end_type @period_endtime @end_type 0331 1 0630 2 0930 3 1231 4 实现: set @i_period = '20230331'; SET @period_endt ......
变量 mysql case when set

Go 语言之 Viper 的使用

# Go 语言之 Viper 的使用 ## Viper 介绍 [Viper](https://github.com/spf13/viper): ### 安装 ```bash go get github.com/spf13/viper ``` ### Viper 是什么? Viper 是一个针对 Go ......
语言 Viper Go

go语言tcp编程学习

# TCP编程 ## 1、网络编程分类 包括TCPsocket编程(底层基于tcp/ip协议)和b/s结构的http编程(使用的是http协议,但是底层是tcp socket实现的) 资料:尚硅谷的TCP资料(3卷),可以咸鱼找下资料看下 ## 2 TCPsocket编程 windows查看端口密码 ......
语言 tcp

【接口测试】Postman(三)-变量与集合

​ 在Postman中,我们进行接口测试一般是以集合为单位,而在日常应用中,我们会经常使用到变量。下面我们将介绍一下变量和集合的一些用法。 ......
变量 接口 Postman

GO 项目依赖管理:go module总结

转载请注明出处: 1.go module介绍 go module是go官方自带的go依赖管理库,在1.13版本正式推荐使用 go module可以将某个项目(文件夹)下的所有依赖整理成一个 go.mod 文件,里面写入了依赖的版本等 使用go module之后我们可不用将代码放置在src下 使用 g ......
项目 module GO

go 接口循环方法

type Call interface { String() string}type Cn struct {}type En struct {}func Newcn() Call { return &Cn{}}func (c *Cn) String() string { b, _ := json.M ......
接口 方法 go

Go 中的格式化字符串`fmt.Sprintf()` 和 `fmt.Printf()`

在 Go 中,可以使用 `fmt.Sprintf()` 和 `fmt.Printf()` 函数来格式化字符串,这两个函数类似于 C 语言中的 `scanf` 和 `printf` 函数。 ## `fmt.Sprintf()` `fmt.Sprintf()` 函数返回一个格式化后的字符串,而不是将其打 ......
字符串 fmt 字符 Sprintf 格式

Go语言学习总结

#### 1. 跳出/执行下一次循环。 ``` {标签名}: for true { ... for true { ... break/continue {标签名} //默认不加标签,则跳出最近一层循环。加了标签可以跳出标签定义处所在循环 } } ``` #### 2. map的使用注意项。 因为ma ......
语言学习 语言

使用go标准库发送邮件

在学习go语言的过程中,发现smtp邮件服务也在go语言的标准库中支持,所以写了一个小demo测试是否能够真的发送邮件,代码如下: ```go package main import ( "crypto/tls" "log" "net/smtp" ) const ( smtpServer = "sm ......
邮件 标准

sudo: /etc/sudoers 中第 21 行附近有解析错误sudo: 没有找到有效的 sudoers 资源

https://blog.csdn.net/weixin_49223002/article/details/121038236 ![image](https://img2023.cnblogs.com/blog/1144139/202306/1144139-20230617181914202-125 ......
sudoers sudo 错误 资源 etc

Go 语言之在 gin 框架中使用 zap 日志库

# Go 语言之在 gin 框架中使用 zap 日志库 ### gin 框架默认使用的是自带的日志 #### `gin.Default()`的源码 Logger(), Recovery() ```go func Default() *Engine { debugPrintWARNINGDefault ......
框架 语言 日志 gin zap

[Go] 理解 Go 的 unintptr、unsafe.Pointer、*type

# 理解 Go 的 unintptr、unsafe.Pointer、*type ## 概念 - `*type`: 用于传递对象地址, 无法进行指针运算 - `unsafe.Pointer`: 通用指针, 用于表示任意类型的指针, 无法进行指针运算, 无法读取存储的值,可作为对象引用 - 任意类型的指 ......
unintptr Pointer unsafe Go type

Go设计模式实战--用状态模式实现系统工作流和状态机

大家好,这里是每周都在陪你进步的网管~!本节我们讲一个行为型的设计模式--状态模式,并通过Golang示例进行实战演示。 状态模式(State Pattern)也叫作状态机模式(State Machine Pattern)状态模式允许对象的内部状态发生改变时,改变它的行为,就好像对象看起来修改了它实 ......
状态 模式 工作流 设计模式 实战

通过安装GVM 安装GO 操作步骤

转载请注明出处: 1.GVM GVM是Go Version Manager的缩写,是一个用于管理Go语言版本的工具。通过GVM,我们可以轻松地安装、切换和卸载不同版本的Go语言。GVM会在用户的home目录下创建一个名为.gvm的隐藏文件夹,其中包含已安装的Go版本和相关的配置文件。 通过GVM安装 ......
步骤 GVM

Go 语言之自定义 zap 日志

# Go 语言之自定义 zap 日志 [zap 日志](https://github.com/uber-go/zap):https://github.com/uber-go/zap ## 一、日志写入文件 - `zap.NewProduction`、`zap.NewDevelopment` 是预设配 ......
语言 日志 zap Go

前端两个变量连续赋值,一环扣一环

let a=b=c={} 这样相当于abc三个变量全部都指向了{}其中一个变量对这个空对象进行了操作那么所有的都会发生变化 let a=b=b='嗨嗨嗨' 这样的话,相当于同时申明了三个普通变量,之后对他们的休改都无关系 见到别人用过这种a=b=c=10 这样的操作,记录一下 ......
前端 变量 两个

Go 语言之 zap 日志库简单使用

# Go 语言之 zap 日志库简单使用 ## 默认的 Go log log:https://pkg.go.dev/log ```go package main import ( "log" "os" ) func init() { log.SetPrefix("LOG: ") // 设置前缀 f, ......
语言 日志 zap Go

php交换两个变量的值,不使用第三个变量

## 参考 - https://www.php.net/manual/zh/function.list.php ## 代码 ```php # 第一种 PHP 4, PHP 5, PHP 7, PHP 8 # 像 array() 一样,这不是真正的函数,而是语言结构。 list() 可以在单次操作内为 ......
变量 三个 两个 php

JDK新建环境变量

1、 JAVA_HOME C:\Program Files\Java\jdk1.8.0_181 2、(写死) CLASSPATH .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 3、(写死) Path %JAVA_HOME%\bin 如果要更换jdk版本,只需 ......
变量 环境 JDK

Go语言编程技巧:实现高效的数据处理和企业应用程序

[toc] 37. Go语言编程技巧:实现高效的数据处理和企业应用程序 摘要 Go语言是一种现代的编程语言,以其高效、简洁、安全、可靠等优点而备受欢迎。本文将介绍Go语言编程技巧,包括数据处理和企业应用程序方面的应用。我们将会讲解Go语言的基本概念,介绍Go语言的背景和技术原理,并介绍实现Go语言高 ......