自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

清风的博客

每天一小步,一年一大步

  • 博客(113)
  • 资源 (1)
  • 收藏
  • 关注

原创 Go中如何找到哪里依赖了某个module,如何找到所有module的最大GoVersion

举例:如何找到哪个模块依赖了?你可以使用以下方法查找。

2024-09-15 01:12:15 471

原创 go get -u @latest没有更新依赖模块

latest只更新到最新的稳定版本(带vX.X.X版本号的 tag)。如果模块没有发布稳定版本或者你需要最新的分支代码,应该使用@master或其他分支名。

2024-09-13 19:06:30 465

原创 JSON 数据的命令行工具jq

json处理工具jq

2024-09-11 19:01:10 515

原创 Dockerfile中的RUN、CMD、ENTRYPOINT指令区别

在构建过程中在镜像中执行命令,是在 docker build中执行ENTRYPOINT不会被docker run命令行参数覆盖,命令行参数会传递给ENTRYPOINT指定的程序。CMD可以被docker run覆盖,且默认参数会在没有额外命令行参数时生效。

2024-09-10 16:22:25 744

原创 Go语言匿名函数和闭包区别

匿名函数:只是不具名的函数。可以立即调用或赋值给变量,但不一定是闭包。主要特点是没有名称。闭包函数:是指能够捕获并引用其外部作用域中的变量的函数。闭包通常是匿名函数,但更重要的是它们可以保持对外部变量的引用。,其中count是外部变量。主要特点是能够捕获并引用外部作用域的变量。

2024-08-07 15:24:23 466

原创 sync.Once应用

调用时机init函数在包初始化时自动调用。sync.Once需要显式调用其Do方法。并发支持init函数不涉及并发,只在包加载时执行一次。sync.Once设计用于并发环境,确保某个操作在并发情况下只执行一次。适用场景init函数适用于包级别的初始化,如设置包级变量、初始化配置等。sync.Once适用于需要在并发环境中确保某个操作只执行一次的情况,如单例模式、延迟初始化等。灵活性init函数只能在包初始化时使用,不灵活。sync.Once。

2024-08-05 14:30:26 869

原创 context详解

调用 CancelFunc 会取消子级及其子级,删除父级对子级的引用,并停止任何关联的计时器。未能调用 CancelFunc 会泄漏子级及其子级,直到父级被取消或计时器触发。WithCancel、WithDeadline 和 WithTimeout 函数采用 Context(父级)并返回派生的 Context(子级)和。当一个 Context 被取消时,从它派生的所有 Context 也会被取消。context携带跨 API 边界和进程之间的截止日期、取消信号和其他请求范围的值。

2024-07-23 16:33:55 300

原创 go test测试

go test

2024-07-14 23:39:07 1044 2

原创 Go泛型详解

官网文档:https://go.dev/blog/intro-generics。

2024-07-11 21:42:43 1223

原创 json.Marshal被转义,json.NewEncoder代替

虽然这种方法可以避免转义,但请注意,这可能会在某些情况下产生不安全或无效的 JSON。例如,如果您的数据中包含 JSON 特殊字符(如引号或反斜杠),可能会导致问题。因此,只有在您确定数据内容安全且需要原始输出时,才应使用这种方法。在大多数情况下,使用默认的转义行为是更安全的选择,特别是当 JSON 可能被用于 Web 应用程序或其他可能对特殊字符敏感的环境中时。这是出于安全考虑,以确保生成的 JSON 是有效的,并且可以在各种环境中安全使用。,因为在某些上下文中(如 HTML),

2024-07-11 19:00:28 388

原创 布隆过滤器(Bloom Filter)

它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。。

2024-06-26 21:04:16 1089

原创 不能对map中的值类型结构体成员直接赋值

能对map中的值类型结构体成员直接赋值cannot assign to struct field p[0].Age in map

2024-06-06 17:02:24 604

原创 Go语言交叉编译

Golang叉编译

2024-06-04 21:21:21 682

原创 本地环境通过ssh通道连接服务器数据库,实现本地客户端和代码可以访问数据库

ssh -p 搭建隧道的端口 -fNL 本地端口:远程ip:远程端口号 搭建隧道的账号@搭建隧道的ip

2024-04-22 21:32:18 479

原创 Git忽略文件

添加需要忽略版本控制的文件,因为这个.gitignore配置文件,所以最常用的是对公共文件的控制。详情:https://blog.csdn.net/weixin_37909391/article/details/84661340。

2024-04-22 19:07:39 363

原创 go build

作用:将Go语言程序和相关依赖编译成可执行文件。

2024-02-20 16:44:47 823

原创 go协程池代码

【代码】go协程池代码。

2024-02-02 17:58:03 474 1

原创 Git查询某次提交属于哪个分支

中间的那串数字是commit ID,替换成你自己的。等一会儿,就会显示这次提交是那个分支的。在Android studio(JetBrains系列也类似)左下角,可以看到所有提交信息。打开Android studio的Terminal,输入。

2023-11-07 09:56:48 699

原创 将特定提交范围的代码合并到当前分支,使用 Git 的 cherry-pick 命令

请注意,在执行 cherry-pick 操作之前,确保您在一个干净的工作状态下,没有未提交的更改,以免与合并的提交冲突。此外,cherry-pick 操作将在当前分支上生成新的提交,其中包含合并的更改。要将某个分支的特定提交范围的代码合并到当前分支,您可以使用 Git 的 cherry-pick 命令。Git 将应用指定提交范围内的更改到当前分支。命令查看要合并的提交的哈希值。请记下要合并的起始提交(commit1)和最终提交(commit2)的哈希值。首先,确保您在要合并代码的目标分支上。

2023-07-17 10:11:20 623

原创 数据库DSN

在上述示例中,使用了 “mysql” 作为驱动程序名称,“root” 作为用户名,“password” 作为密码,“127.0.0.1:3306” 作为数据库服务器的主机和端口,“mydatabase” 作为要连接的数据库名称,以及一些额外的查询参数。请注意,具体的 DSN 格式可能会因不同的数据库驱动程序和数据库系统而有所变化。因此,请参考您所使用的数据库驱动程序的文档以获取正确的 DSN 格式和组成。您需要根据所使用的数据库驱动程序和数据库系统来确定正确的 DSN 格式和组成。

2023-07-04 11:21:07 1177

原创 Git将单个文件合并到指定分支

现在,你已经成功将单个文件的更改从源分支合并到了目标分支。请确保在执行这些命令之前做好备份或者在合并前进行测试,以确保操作正确并且不会造成数据丢失。确保你在要合并文件的源分支上进行操作。这将从源分支检出指定文件,并将其合并到当前所在的目标分支。

2023-06-30 17:09:51 3413

原创 Go逻辑运算符&^

计算机中的逻辑运算见:https://blog.csdn.net/weixin_37909391/article/details/131441253。&^ bit clear (AND NOT) 按位清零。

2023-06-28 21:57:33 346

原创 计算机中的逻辑运算(与、或、非、异或、同或、与非、或非)

计算机中的逻辑运算又被称作为“布尔运算”,分别为:逻辑运算、逻辑运算,逻辑运算,“逻辑运算。运算、运算、运算。共七种。这七种逻辑运算中,只有 逻辑非运算 是一元逻辑运算(一个运算操作数),其他六种均是二元逻辑运算(两个运算操作数)。

2023-06-28 17:12:41 19436

原创 BitMap

在使用BitMap时,通常需要将数据映射到BitMap中的位位置。例如,对于一个整数集合,可以将每个整数映射到BitMap中的对应位上。BitMap(位图)是一种用于存储和操作二进制位(0和1)的数据结构。它将每个元素表示为一个二进制位,可以使用位运算对位图进行高效的插入、删除和查询操作。通过将整数映射到BitMap的位上,可以进行高效的位操作。,因为BitMap的大小直接取决于数据集的最大值。当数据集较大时,BitMap可能会占用大量的内存。在Go语言中,可以使用内置的位运算操作符和数据类型(如。

2023-06-28 16:38:03 319

原创 Go文件操作

go文件操作

2023-06-27 17:59:08 599

原创 oauth2.0

文档地址:https://datatracker.ietf.org/doc/html/rfc6749。

2023-06-01 00:13:16 592

原创 Go Run kind:Directory、Package、File

这三种运行方式都可以用来执行 Go 语言程序,具体使用哪种方式取决于你的需求和项目结构。在 Go 语言中,有三种运行方式:directory、package 和 file。

2023-05-29 10:53:38 512

翻译 Go竞争检测器(race detector)

Introducing the Go Race Detector

2023-05-26 17:16:20 345

原创 go sync包

go sync包

2023-05-25 16:42:44 874

原创 sync.WaitGroup的基本使用

sync.WaitGroup的基本使用。

2023-05-24 19:40:50 98

转载 iota关键字的使用

iota是go语言的常量计数器,只能在常量的表达式中使用。其值从0开始,在const中每新增一行将使得iota计数一次,即iota自己增长1(从这点来看,iota可以看成const块中的行索引,记录行数),其值一直自增1直到遇到下一个const关键字,其值才被重新置为0.在常量声明中,如果一个常量没有赋值,则他就跟上一行的赋值相同。使用iota能简化定义,在定义枚举时很有用。

2023-05-24 17:57:44 153

原创 机器数、真值、原码、反码、补码

机器数是数字在计算机中的二进制表示形式。机器数有2个特点:一是符号数字化,二是其数的大小受机器字长的限制。机器数可以是带符号的,也可以是不带符号的。带符号的机器数用来表示正数、负数和零,而不带符号的机器数只能表示非负整数。在计算机中,通常使用有符号的机器数来进行算术运算和表示数据。但是,在某些情况下,无符号的机器数也会被使用,例如在位运算和处理二进制数据时。在计算机用机器数的最高位存放符号,正数为0,负数为1。比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是0000 0011。

2023-05-23 20:02:51 5625

原创 Go类型断言

go类型断言

2023-05-18 22:45:29 611

原创 nohup与&区别

nohup 是 no hang up 的缩写,就是不挂断的意思。运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号;如 nohup tail -f nohup.out。

2023-05-17 20:02:40 294

转载 VIM删除命令

vim删除命令,删除单行,删除多行,删除全部,正则删除

2023-03-29 23:54:20 11805

原创 查进程位置

linux查进程位置的命令。pwdx & ls -l /proc/${pid}

2023-03-07 11:12:58 146

原创 正则表达式前瞻(?=)、后顾(?<=)、负前瞻(?!)、负后顾(?<!)

前瞻(?=)exp1(?=exp2) 查找exp2前面的exp1后顾(?<)(?<=exp2)exp1 查找exp2后面的exp1负前瞻(?!)exp1(?!exp2) 查找后面不是exp2的exp1负后顾(?<!)(?<!exp2)exp1

2021-06-22 16:55:05 1592 1

原创 二叉树找前驱和后序

前序遍历图1图2图3

2021-01-18 00:14:36 757

原创 红黑树的旋转

如果对红黑树还不了解的,建议看上一篇博客。https://blog.csdn.net/weixin_37909391/article/details/112252930首先回顾以下红黑树的性质:结点必须是红色或者黑色。 根节点必须是黑色。 叶节点(NIL)必须是黑色(NIL节点无数据,是空节点)。 红色结点不能连续。 从任一节点出发到其每个叶子节点的路径,黑色节点的数量必须相等。...

2021-01-05 23:07:07 508 1

转载 红黑树简介

二叉查找树(BST)具备什么特性呢?1.左子树上所有结点的值均小于或等于它的根结点的值。2.右子树上所有结点的值均大于或等于它的根结点的值。3.左、右子树也分别为二叉排序树。下图中这棵树,就是一颗典型的二叉查找树:1.查看根结点9:2.根据二叉查找树左子树小、右子树大的特性,10 > 9,因此值为10的结点只可能在根结点的右子树当中,我们查看右孩子结点13:3.由于10 < 13,...

2021-01-05 21:07:54 246

tplay后台管理框架

Tplay是一款基于ThinkPHP5 + Layui2 + Mysql开发的后台管理框架,PHP版本要求提升到5.5,Tplay集成了一般应用所必须的功能模块,为开发者减少重复性的工作,提升开发速度,规范团队开发模式。

2018-05-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除