您的位置:首页关键词: Golang
  • golang interface判断为空nil的实现代码
    要判断interface 空的问题,首先看下其底层实现。interface 底层结构根据 interface 是否包含有 method,底层实现上用两种 struct 来表示:iface 和 eface。eface表示不含 method 的 interface 结构,或者叫 empty interf...
    日期:2023-10-29浏览:73
    标签: Golang
  • golang slice元素去重操作
    合并两个整型切片,返回没有重复元素的切片,有两种去重策略1. 通过双重循环来过滤重复元素(时间换空间)// 通过两重循环过滤重复元素func RemoveRepByLoop(slc []int) []int { result := []int{} // 存放结果 for i := ra...
    日期:2023-10-22浏览:265
    标签: Golang
  • 解决golang中container/list包中的坑
    golang中list包用法可以参看这篇文章但是list包中大部分对于e *Element进行操作的元素都可能会导致程序崩溃,其根本原因是e是一个Element类型的指针,当然其也可能为nil,但是golang中list包中函数没有对其进行是否为nil的检查,变默认其非nil进行操作,所以这种情况下...
    日期:2023-09-27浏览:105
    标签: Golang
  • Golang中的sync包的WaitGroup操作
    sync的waitgroup功能WaitGroup使用多线程时,进行等待多线程执行完毕后,才可以结束函数,有两个选择channelwaitgroup首先使用channelfunc add (n *int , isok chan bool){for i :=0 ;i <1000 ; i ++ {...
    日期:2023-10-28浏览:103
    标签: Golang
  • 解决Golang中ResponseWriter的一个坑
    在使用Context.ResponseWriter中的Set/WriteHeader/Write这三个方法时,使用顺序必须如下所示,否则会出现某一设置不生效的情况。ctx.ResponseWriter.Header().Set('Content-type', 'application/text') ...
    日期:2023-10-27浏览:95
    标签: Golang
  • golang 实现一个restful微服务的操作
    如何用net/http构建一个简单的web服务Golang提供了简洁的方法来构建web服务package main import ( 'net/http') func HelloResponse(rw http.ResponseWriter, request *http.Request) { ...
    日期:2023-10-23浏览:73
    标签: Golang
  • golang 比较浮点数的大小方式
    Golang浮点数比较和运算会出现误差。浮点数储存至内存中时,2的-1、-2……-n次方不能精确的表示小数部分,所以再把这个数从地址中取出来进行计算就出现了偏差。package mainimport ('errors''fmt''github.com/shopspring/decimal')func...
    日期:2023-10-20浏览:159
    标签: Golang
  • 浅谈golang package中init方法的多处定义及运行顺序问题
    在不了解这个问题之前,在网上搜索一下竟然搜出了两个完全相反的结果,所以打算自己测试下这个问题。首先给出结论:在同一个package中,可以多个文件中定义init方法在同一个go文件中,可以重复定义init方法在同一个package中,不同文件中的init方法的执行按照文件名先后执行各个文件中的ini...
    日期:2023-10-17浏览:98
    标签: Golang
  • golang recover函数使用中的一些坑解析
    这篇文章主要为大家介绍了golang recover函数使用中的一些坑解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    日期:2023-04-15浏览:309
    标签: PHP
  • golang频率限制 rate详解
    golang.org/x/time/rate 提对速度进行限制的算法l := rate.NewLimiter(1, 3) // 一个参数为每秒发生多少次事件,第二个参数是最大可运行多少个事件(burst)Limter提供三中主要的函数 Allow, Reserve, Wait. 大部分时候使用Wai...
    日期:2023-11-20浏览:150
    标签: Golang