rockylinux9 rockylinux golang1 golang

golang目录下main包调用问题

问题 # command-line-arguments 本质原因: 在同级目录下,main包文件不能直接调用必须选中加载才可以 在同级目录下,其他非main包则就可以导入包,可以关联调用 解决 ......
目录 golang 问题 main

使用golang+antlr4构建一个自己的语言解析器(完结篇)

Goland 中Antlr4插件 在goland中安装Antlr4插件,用于识别输入的字符在在语法文件中生成的语法树的样子,大概就是如下的摸样 下载步骤: 1.点击文件中的设置选项 2.在插件目录下输入Antlr4搜索插件 3.点击安装即可 编写自己的语言语法文件 编写语法之前,我们首先要构思一下自 ......
语言 golang antlr4 antlr

动手造轮子自己实现人工智能神经网络(ANN),解决鸢尾花分类问题Golang1.18实现

人工智能神经网络( Artificial Neural Network,又称为ANN)是一种由人工神经元组成的网络结构,神经网络结构是所有机器学习的基本结构,换句话说,无论是深度学习还是强化学习都是基于神经网络结构进行构建。关于人工神经元,请参见:人工智能机器学习底层原理剖析,人造神经元,您一定能看 ......

05 Golang 流程控制

一、条件判断 1. 条件判断简介 条件语句是用来判断给定的条件是否满足(表达式值是否为true或者false),并根据判断的结果决定执行情况的语句。go语言中的条件语句主要包含如下几种情况: if - else if - else 语句:if 语句由一个布尔表达式后紧跟一个或多个语句组成,语句后可以 ......
流程 Golang 05

使用golang+antlr4构建一个自己的语言解析器(二)

Antlr4文件解析流程 该图展示了一个语言应用程序中的基本流动过程 输入一个字符流,首先经过词法分析,获取各个Token 然后经过语法分析,组成语法分析树 Antlr4语法书写规范 语法关键字和使用 | 符号 | 作用 | | | | | ? | 表达式可选| | * | 表达式出现0此或多次| ......
语言 golang antlr4 antlr

开源: golang+vue的论坛 和 node+react的IM系统

最近基于开源做了两个自己系统 都是UI非常好看的 我将两个系统的数据互通了 附带了一些产品思考 只需要一个邮箱就可以登录 无密码 无手机号 尽量简化流程 第一个论坛 站点 https://bulita.cn 现在主要是聚合招聘信息 目标是尽可能降低招聘和求职的门槛 以上海和远程工作为主 开源地址 h ......
golang 系统 react 论坛 node

Golang中关于超时的实现方法

1、通过两个不同的管道设置sleep超时 package main import ( "context" "fmt" "time" ) const ( WorkUseTime = 500 * time.Millisecond Timeout = 100 * time.Millisecond ) // ......
方法 Golang

windows系统下golang安装教程

go下载软件地址: https://studygolang.com/dl/golang/go1.19.5.windows-amd64.msi window安装软件,点下一步下一步安装即可 记得有一步是将go加入系统环境变量,需要点击一下。忘记截图了 安装完后运行cmd命令窗口运行命令 go vers ......
windows 教程 golang 系统

linux系统下golang安装教程

Linux下安装Golang 系统:centos 7.8 mkdir /home/src wget https://golang.google.cn/dl/go1.19.5.linux-amd64.tar.gz 解压 tar -xf go1.19.5.linux-amd64.tar.gz -C /u ......
教程 golang 系统 linux

golang 实现的零依赖、高性能、并发 mysqldump 工具。

mysqldump golang 中实现的零依赖、高性能、并发 mysqldump 工具。 项目地址: https://github.com/dengjiawen8955/mysqldump/blob/master/README-zh.md 文章地址: https://bmft.tech/#/2-p ......
高性能 mysqldump 工具 golang

【golang实现即时通讯系统】(一)

即时通讯系统 1.基础server构建 创建一个Server的结构体,结构体应该包含服务端的IP和端口 写一个创建Server的方法 创建一个启动Server函数 创建一个业务链接函数 server.go package main import ( "fmt" "net" ) type Server ......
通讯系统 通讯 golang 系统

golang pprof 监控系列(1) —— go trace 统计原理与使用

golang pprof 监控系列(1) —— go trace 统计原理与使用 服务监控系列文章 服务监控系列视频 关于go tool trace的使用,网上有相当多的资料,但拿我之前初学golang的经验来讲,很多资料都没有把go tool trace中的相关指标究竟是统计的哪些方法,统计了哪段 ......
原理 golang pprof trace go

使用golang+antlr4构建一个自己的语言解析器(一)

Antlr4 简介 ANTLR(全名:ANother Tool for Language Recognition)是基于LL(*)算法实现的语法解析器生成器(parser generator),用Java语言编写,使用自上而下(top-down)的递归下降LL剖析器方法。由旧金山大学的Terence ......
语言 golang antlr4 antlr

golang相关介绍

前言: golang的语言介绍,发展介绍,相关网站 正文: golang介绍 Go语言(或 Golang)起源于 2007 年,并在 2009 年正式对外发布。是由 Google 公司开发的一种静态强类型、编译型、并发型、并具有垃圾回收功能的编程语言。 Go 是非常年轻的一门语言,它的主要目标是 兼 ......
golang

(转)golang beego后端开发框架(二):配置、路由和控制器

原文:https://www.dianjilingqu.com/178381.html 1. beego参数配置 beego目前支持INI、XML、JSON、YAML格式的配置文件解析,但是默认采用了INI格式解析,用户可以通过简单的配置就可以获得很大的灵活性 1.1 默认配置解析 neego会默认 ......
路由 控制器 框架 golang beego

linux 下 golang jdk 环境变量配置

export GOPROXY=https://goproxy.cn,direct export GOROOT=/usr/local/go export GOPATH=$HOME/go export GOBIN=$GOPATH/bin export PATH=$PATH:$GOROOT/bin:$GO ......
变量 环境 golang linux jdk

golang 异常捕获和处理(panic/recover)

1.异常处理 Golang 没有结构化异常,使用 panic 抛出错误,recover 捕获错误。 异常的使用场景简单描述:Go中可以抛出一个panic的异常,然后在defer中通过recover捕获这个异常,然后正常处理。 1.1. panic 内置函数假如函数F中书写了panic语句,会终止其后 ......
recover golang panic

[Linux] rockylinux9.1 的部署使用过程 -- ZFS 虚拟机 cockpit podman samba

备选镜像 | Rocky Linux rocky linux 使用记录 - 个人文章 - SegmentFault 思否 # https://blog.csdn.net/NeverGUM/article/details/128812445 sed -e 's|^mirrorlist=|#mirror ......
rockylinux9 rockylinux 过程 cockpit podman

wails 基于golang 的跨平台开发解决方案

wails 是可以使用golang 进行跨平台开发的框架 参考使用 依赖 需要go 18+,node 15+ 安装 go install github.com/wailsapp/wails/v2/cmd/wails@latest 创建项目 wails init -n myproject -t van ......
解决方案 方案 golang wails

golang解决kafka消息丢失

Kafka是一个高吞吐量的分布式发布订阅消息系统,由于其高效的消息传递机制,被广泛应用于大规模数据处理、日志收集和实时数据流处理等场景中。但是,由于网络、硬件等原因,Kafka的消息有时可能会出现丢失的情况。下面是一些Go语言中解决Kafka消息丢失问题的方法: 1.设置合适的Kafka配置 在创建 ......
消息 golang kafka

golang解决kafka消息重复发送和重复消费

1、解决消息重复发送 当使用Kafka生产者发送消息时,可以设置消息的Key,使用Key来保证相同Key的消息不会被重复发送。在发送消息时,可以使用带Key的消息发送方式,如下所示: msg := &sarama.ProducerMessage{ Topic: "test", Partition: ......
消息 golang kafka

golang条件编译

方式 文件名 条件编译之文件名 命名方式 # 操作系统区分 xx_$GOOS.go # 区分架构 x86 / x64 _$GOOS_$GOARCH.go ......
条件 golang

Golang 大杀器之性能剖析 PProf

参考文章: Golang 大杀器之性能剖析 PProf Graphviz安装及入门教程 接触了那么久的go,一直也在用go写项目代码,有时遇到一些性能、内存问题,一时不好下手,幸好go自带性能大杀器,帮助我们及时知悉项目代码运行情况与cpu耗时、内存占用等一系列问题。 本次分享主要基于 Golang ......
性能 Golang PProf

golang 版本管理(windows版本)

golang 版本管理(windows版本) 一、下载版本管理器 使用的开源项目地址:https://github.com/voidint/g 下载release安装包 https://github.com/voidint/g/releases/tag/v1.5.0 二、安装 打开powershel ......
版本 windows golang

golang 反射reflect

1.基本介绍 1)反射可以在运行时动态获取变量的各种信息,比如变量的类型(type),类别(kind) 2)如果是结构体变量,还可以获取到结构体本身的信息(包括结构体的字段,方法) 3)通过反射,可以修改变量的值,可以调用关联的方法 4)通过反射,需要import("reflect") packag ......
reflect golang

Go 语言:如何利用好 TDD 学习指针并了解 Golang 中的 error 处理

我们在上一节中学习了结构体(structs),👉Go语言:利用 TDD 驱动开发测试 学习结构体、方法和接口 它可以组合与一个概念相关的一系列值。 你有时可能想用结构体来管理状态,通过将方法暴露给用户的方式,让他们在你可控的范围内修改状态。 金融科技行业都喜欢 Go 和比特币吧?那就来看看我们能创 ......
指针 语言 Golang error TDD

使用 GVM 搭建可维护的 Golang 开发环境

当你想完成 Golang 开发环境的便捷安装以及随时更新和保障多个版本的 Golang 共存的时候,就需要使用到 Golang 的专门版本管理工具 ——gvm 本篇随笔记录了在 Ubuntu 下安装使用 gvm 的过程 Gvm 的下载 我们可以使用国内镜像下载包含安装脚本的仓库代码,然后直接执行安装 ......
环境 Golang GVM

golang中关于deadlock的思考与学习

1、Golang中死锁的触发条件 1.1 书上关于死锁的四个必要条件的讲解 发生死锁时,线程永远不能完成,系统资源被阻碍使用,以致于阻止了其他作业开始执行。在讨论处理死锁问题的各种方法之前,我们首先深入讨论一下死锁特点。 必要条件: 如果在一个系统中以下四个条件同时成立,那么就能引起死锁: 互斥:至 ......
deadlock golang

小心golang中的无类型常量

对于无类型常量,可能大家是第一次听说,但这篇我就不放进拾遗系列里了。 因为虽然名字很陌生,但我们每天都在用,每天都有无数潜在的坑被埋下。包括我本人也犯过同样的错误,当时代码已经合并并发布了,当我意识到出了什么问题的时候为时已晚,最后不得不多了个合并请求留下了丢人的黑历史。 为什么我要提这种尘封往事呢 ......
常量 类型 golang

解决golang 的内存碎片问题

解决golang 的内存碎片问题 本文译自Why I encountered Go memory fragmentation? How did I resolve it?,作者通过分析golang的堆管理方式,解决了内存碎片的问题。 背景 我们的团队正在搭建运行一个兼容Prometheus的内存时序 ......
碎片 内存 golang 问题