go学习
zhagzheguo
这个作者很懒,什么都没留下…
展开
-
[go学习]goland不解析go.mod
新导入的项目,遇到了go.mod一片红的问题,一个也不解析,有些把鼠标放上去也能跳转到指定的包位置。原因在于新导入的项目没有开go module,所以goland不解析go.mod文件,在perference-go-Go Module里打开就好了。https://segmentfault.com/q/1010000020603338...原创 2021-12-01 11:17:47 · 1770 阅读 · 0 评论 -
[go]golang 的GC原理
我直接复制粘贴过来的,保存一下怕找不到了,推荐看原帖:http://alblue.cn/articles/2020/07/07/1594131614114.html#toc_h4_19go的GC机制调用方式所在位置代码定时调用runtime/proc.go:forcegchelper()gcStart(gcTrigger{kind: gcTriggerTime, now: nanotime()})分配内测时调用runtime/malloc.go:mallocgc()g转载 2021-03-10 15:23:02 · 595 阅读 · 0 评论 -
[go]go注释中的Example
意思就是说可以为代码写一个example_test.go文件,然后为函数起名:ExampleXXX,就是为XXX写的example,在看XXX函数注释的时候就会引用到这个example。转载文件自:原文链接,建议看原文,本文为节选。查看example_test.go的文件内容之后得出了以下结论:如果为函数添加Example, 直接在example_test.go文件中添加函数func Example{要提供示例的函数名}func ExampleDesEncrypt() { var data = "转载 2020-09-30 16:18:11 · 1087 阅读 · 0 评论 -
[go]Go语言编译器的 “//go:“ 详解
完全转载,都没排版:原文:原文地址别人的简书转载前言C 语言的 #include一上来不太好说明白 Go 语言里 //go: 是什么,我们先来看下非常简单,也是几乎每个写代码的人都知道的东西:C 语言的 #include。我猜,大部分人第一行代码都是 #include 吧。完整的就是#include <stdio.h>。意思很简单,引入一个 stdio.h。谁引入?答案是编译器。那么,# 字符的作用就是给 编译器 一个 指示,让编译器知道接下来要做什么。编译指示在计算机编程中,编转载 2020-09-30 15:46:11 · 545 阅读 · 0 评论 -
[工具]IPFIX报文封装
项目中用到了一个需要自己手动封装ipfix报文的需求,然而去github上没找到相关工具包???大多都是collector用的解析包,我从vflow摘出部分代码自己写了个工具包,没有进行过完全的测试,不过最基本的ipfix已经可以封装了,分享一下,如果碰到bug可以继续优化一下。github: https://github.com/cang233/ipfix-gen使用示例:func TestSendIPFIX(t *testing.T) { ori := Message{ AgentID: "原创 2020-09-21 15:20:18 · 1365 阅读 · 0 评论 -
[go学习]go中container/list的实现(等待填坑)
先挖坑再填坑:// remove removes e from its list, decrements l.len, and returns e.func (l *List) remove(e *Element) *Element { e.prev.next = e.next e.next.prev = e.prev e.next = nil // avoid memory leaks e.prev = nil // avoid memory leaks e.list = nil l.le原创 2020-09-11 14:47:07 · 254 阅读 · 0 评论 -
[go学习] go中的sync.Once实现
问题:为什么在实现的时候既用了lock又用了atomic?先贴下源码// Copyright 2009 The Go Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package syncimport ( "sync/atomic")// Once is an obje.原创 2020-09-10 19:28:38 · 315 阅读 · 3 评论 -
[go学习]解决golang.org无法访问的问题
每次用go装个东西,大多都会碰到golang.org/xxx下载依赖的问题,现在提供一种自己用着还不错的解决方案,那就是使用GOPROXY和go module。我使用的go版本是go1.12。go代理有很多,读者可以搜一下国内goproxy,哪个好用用哪个,我用的是https://goproxy.io,这个。1、linux下使用goproxy在linux下,编辑/etc/profile,在最...原创 2019-10-15 17:12:56 · 8037 阅读 · 0 评论 -
[go学习]vscode中开发golang没有代码自动提示
网上找了不少资料,最后还是在github的issue里找到了解决办法,链接:https://github.com/Microsoft/vscode-go/issues/1711 。解决方案:1、运行以下命令关闭gocode。gocode closegocode exit2、删除GOPATH/src和GOPATH/pkg里的mdempsky/gocode和nfs/gocode文件夹,我...原创 2019-10-15 16:53:18 · 14792 阅读 · 0 评论