• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
陈天刚
没有困难,创造困难也要上
博客园 首页 新随笔 管理

2023年10月31日

awk使用正则表达式匹配后进行大小写转换
摘要: vim a.awk BEGIN { while (( getline line < "./1.txt") > 0) { gsub(/INSERT INTO ".*" \(.*\) VALUES/,tolower(line), line); print line; } } 执行awk -f a.awk 阅读全文
posted @ 2023-10-31 18:33 陈天刚 阅读(72) 评论(0) 推荐(0)
 
 

2019年1月16日

Docker多主机互联
摘要: 在公司使用docker多主机互联时碰到了各种坑。搞清楚后才发现如此简单,以下是根据实际经验的总结. 版本信息 在主节点上 生成token 在其它节点添加到集群 在任意节点创建网络 此时,在其它节点执行 docker network ls, 可以看到该网络已同步到所有节点,不同节点的主机指定该网络创建 阅读全文
posted @ 2019-01-16 10:44 陈天刚 阅读(743) 评论(2) 推荐(0)
 
 

2018年12月20日

数据结构
摘要: 数据结构可视化 https://www.cs.usfca.edu/~galles/visualization/Algorithms.html golang生成数据结构库 一个可以就将数据库生成图片的库 https://github.com/Arafatk/dataviz 标准数据结构库 https: 阅读全文
posted @ 2018-12-20 09:30 陈天刚 阅读(219) 评论(0) 推荐(0)
 
 

2018年11月2日

golang反射
摘要: 要点 1.变量 2.反射 3.结构体反射 4.反射总结以及应用场景 一、变量介绍 1.变量的内在机制 A、类型信息,这部分是元信息,是预定义好的 B、值类型,这部分是程序运行过程中,动态改变的 二、反射介绍 1.反射与空接口 A、空接口可以存储任何类型的变量 B、那么给你一个空接口,怎么知道里面存储 阅读全文
posted @ 2018-11-02 16:18 陈天刚 阅读(583) 评论(0) 推荐(0)
 
 

2018年10月26日

waitGroup的使用
摘要: ```go package main import ( "fmt" "sync" "time" ) func main() { var wg sync.WaitGroup //一个没有缓冲区的chan ch := make(chan string) wg.Add(3) go sendData(ch, 阅读全文
posted @ 2018-10-26 17:05 陈天刚 阅读(1010) 评论(0) 推荐(0)
 
 

2018年10月25日

golang中的mutex锁
摘要: mutex锁中一种互斥锁,如果有多个goroutine需要对同一变量进行修改则需要对该变量施加mutex锁以实现安全读写。 阅读全文
posted @ 2018-10-25 18:16 陈天刚 阅读(288) 评论(0) 推荐(0)
 
goroutine和channel
摘要: 近期在学习golang的goroutine和channel时候有一些疑惑: 1. 带缓冲的channel和不带缓冲的channel有什么区别? 2. goroutine和主进程的有哪些影响和关系? 3. 多个goroutine的执行顺序是怎么样的? 通过下面的代码我们可以得到答案 第一个例子 1. 阅读全文
posted @ 2018-10-25 15:08 陈天刚 阅读(318) 评论(0) 推荐(0)
 
如何优雅的关闭Golang Channel?
摘要: Channel关闭原则 不要在消费端关闭channel,不要在有多个并行的生产者时对channel执行关闭操作。 也就是说应该只在[唯一的或者最后唯一剩下]的生产者协程中关闭channel,来通知消费者已经没有值可以继续读了。只要坚持这个原则,就可以确保向一个已经关闭的channel发送数据的情况不 阅读全文
posted @ 2018-10-25 10:56 陈天刚 阅读(3871) 评论(0) 推荐(0)
 
 

2018年10月24日

使用context关闭协程以及协程中的协程
摘要: ```go package main import ( "sync" "context" "fmt" "time" ) var wg sync.WaitGroup func worker2(ctx context.Context) { LOOP: for { fmt.Printf("worker2\ 阅读全文
posted @ 2018-10-24 11:24 陈天刚 阅读(713) 评论(0) 推荐(0)
 
 

2018年10月17日

golang对不同系统的编译
摘要: Golang 支持在一个平台下生成另一个平台可执行程序的交叉编译功能。 Mac下编译 Linux下编译 Windows下编译 阅读全文
posted @ 2018-10-17 11:54 陈天刚 阅读(1329) 评论(0) 推荐(0)
 
 
下一页

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3