go

golang比较时间大小

golang中比较时间大小的方法有:Before, After, Equal 可以直接比较 time 类型 t1 := time.Now() t2 := time.Now() // 取较大时间 if t2.After(t1) { return t2 } else { return t1 } 先把...

gorm的sum查询

var amount1 float64 global.GVA_DB.Model(&product).Debug().Where("`type` = 0 AND `category_id` = ?", cat.ID).Pluck("COALESCE(SUM(price), 0) as amount1", &amount1).Error

Go之锁(一)

锁的几种描述 死锁 活锁 饥饿锁 锁的种类 互斥锁 读写互斥锁 读写锁 读锁 写锁 死锁 死锁的概念 两个或者两个以上的进程(或线程),因争夺资源而互相等待. 特点: 这些进程(或线...

Go语言多核并行化

并发和并行的概念 首先了解什么是并发什么是并行 Go当中实现多核多线程并发 注意: 注意区分什么是goroutine在并发和并行章节已经提到了. 获取当前操作系统CPU的核心数: 示例代码: package main ...

Go语言关闭通道后继续使用通道

概念 通道是一个引用,会被垃圾回收机制回收,也可以主动关闭 关闭通道的函数 函数: close() 被关闭的通道的特点: 被关闭的通道不会被置为nil 给被关闭的通道发送数据会触发panic 向已关闭的通...

Go语言RPC(模拟远程过程调用)

什么是RPC框架? RPC是指Remote Procedure Call远程过程调用 作用: 简化进程间通信的过程 RPC的作用 装通信过程,让远程的数据收发通信过程看起来就像本地的函数调用一样。 Go之RPC示例 特点: ...

银众网