golang demo grpc
lambda表达式运用 ----demo
点击查看代码 public class test { public static void main(String[] args) { List<User> list = new ArrayList<>(); list.add(new User(21L, "张三")); list.add(new U ......
golang 写文件的几种方法 (临时文件)
一、写文件写文件一般步骤 打开文件,获取文件句柄根据不同方法,将数据写入关闭文件句柄 打开文件,获取文件句柄os.OpenFile(path, os.O_CREATE, 0666)我们来了解一下第二个参数的含义: O_RDONLY // 只读模式打开文件O_WRONLY // 只写模式打开文件O_R ......
golang中xorm自动维护表结构自动导入数据的实现
Xorm简介 Go 标准库提供的数据库接口database/sql比较底层,使用它来操作数据库非常繁琐,而且容易出错。因而社区开源了不少第三方库,有各式各样的 ORM (Object Relational Mapping,对象关系映射库),如gorm和xorm。其中xorm是一个简单但强大的ORM ......
Golang GMP原理(2)
GMP调度场景 场景1 P拥有G1,M1获取P后开始运行G1,G1使用 go func 创建G2,为了局部性G2优先加入到P1的本地队列 场景2 G1运行完成后(函数:goexit),M上运行的goroutine切换为G0,G0负责调度时协程的切换(函数:schedule)。从P的本地队列取G2,从 ......
【小小Demo】在线聊天小🌰子
easy-chat 一个简单的即时通讯demo。 环境 jdk1.8 idea maven springboot 2.1.1.RELEASE websocket 项目启动 修改maven设置 打开IDEA 设置:File>Setting>Build,Exec... 如下图所示 启动 找到启动类,鼠标 ......
【小小Demo】网页视频通话
工程名 video-call 一个简单的 音视频通话 demo,包含:视频、麦克风、屏幕共享操作。 项目环境 jdk1.8 idea maven springboot 2.1.1.RELEASE websocket thymeleaf 项目启动 修改maven设置 打开IDEA 设置:File>Se ......
Golang 网络爬虫框架gocolly
Golang 是一门非常适合编写网络爬虫的语言,它有着高效的并发处理能力和丰富的网络编程库。下面是一个简单的 Golang 网络爬虫示例: package main import ( "fmt" "net/http" "io/ioutil" "regexp" ) func main() { resp ......
Golang刷题日志--链表部分(更新中)
1.给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 1 1 2 3 3 --> 1 2 3 判断如果当前节点val与后继节点val相等,则将后继节点的next赋给当前节点next,若不然,则移动当前节点置下一节点(cur=cur.next) ......
Golang MySQL 操作
1 . 创建go_db 目录 mkdir go_db 2. root@VirtualBox:/mnt/share/goframe/go_db# go mod init go_dbgo: creating new go.mod: module go_dbroot@VirtualBox:/mnt/sha ......
golang map key struct hash policy
The easiest and most flexible way is to use a struct as the key type, including all the data you want to be part of the key, so in your case: type Key ......
学习Golang时遇到的似懂非懂的概念
背景🐋 这是我学习golang的第三天,大致已经掌握了golang的语法,但是着手开发的时候,却遇到了许多问题,例如golang导包机制、golang的项目管理规范、go mod生成project怎么管理依赖的等等。其实这些概念之前也了解过,但是也只是如蜻蜓点水般的了解。正好,现在遇到了这些问题, ......
Golang中map的安全使用
简单介绍 map数据类型在很多语言中都有,是一个key,value形式的hash表,从而将key,value进行一一映射,进行快速查找、添加、删除等操作。在Go语言中也不例外,提供了map数据结构类型。 内建map切忌开箱即用 golang中,map是引用类型,如指针切片一样,通过下面的代码声明后指 ......
Go语言(Golang)编写最简单的命令行工具
最简单的命令行工具 项目预览 >echo abc 123 --name=nick abc 123 --name=nick 课程概述 如何制作命令行应用 如何使用 os.Args 获得命令行参数 前提条件 懂得 Go 语言基本语法 知识点 OS 包提供了用于处理操作系统相关内容的函数/值 独立于平台的 ......
hashmap oop in golang
package main import ( "fmt" ) const HASH_BUCKET_SIZE = 3 //1023 type hash_node struct { key interface{} val interface{} next *hash_node } type HASH_BU ......
golang的vscode环境搭建
因为墙的原因,vscode安装go插件会有报错,需要切换成国内的镜像 GOPROXY https://proxy.golang.com.cn,direct ......
golang hashmap
package main import ( "fmt" ) const HASH_BUCKET_SIZE = 3 //1023 type hash_node struct { key interface{} val interface{} next *hash_node } //hash bucke ......
Golang基础--加锁与原子操作
前言 在实际项目开发中,有时会面临同一时刻将多个goroutine作用于同一个对象的情况,此时,他们之间会发生冲突,这种情况称为数据竞态问题。例如: package main import ( "fmt" "time" ) var count int func main() { go CountPl ......
golang模拟键盘输入字符串
* 仅供学习使用哈,不要用来开gua。
* 代码仓库:https://github.com/GuoFlight/gkeybd(本人仓库,欢迎留言) ......
golang基础--Goroutine与Channel
什么是goroutine? goroutine是go特有的并发体,是一种轻量级的线程,由go关键字启动。goroutine是Go语言提供的一种用户态线程,有时我们也称之为 协程。所谓的协程,某种程度上也可以叫做轻量线程,它不由os,而由应用程序创建和管理,因此使用 开销较低(一般为4K)。我们可以创 ......
浅谈Protocol Buffers、GRPC、Buf、GRPC-Gateway
1.Protocol Buffers 什么是proto? Protocol Buffers 如何理解Protocol Buffers? 协议缓冲区 非proto协议如何订立、传播以及维护? 如何理解协议缓冲区? Protocol buffers 提供了一种语言中立、平台中立、可扩展的机制,用于以向前 ......
js postMessage demo
npm i http-server -g http-server -p 8881 http://localhost:8881/ main.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-eq ......
常用的截取字符串方法JS和Golang实现
JS中截取字符串很简单,直接使用substr函数 substr() 方法可在字符串中截取从开始下标开始的指定数目的字符。下标是从0开始算 例如: "21".substr(0,1) 返回2 golang实现的substr // 截取字符串,支持多字节字符 // start:起始下标,负数从从尾部开始, ......
golang控制语句和运算符
一、go程序基础 1、文件名 go语言文件名命名规范: go语言的文件名必须以.go结尾。 go语言的文件名必须以小写字母开头,否则会报错。 go语言的文件名不能包含空格,否则会报错。 go语言的文件名不能包含特殊字符,否则会报错。 go语言的文件名不能包含中文,否则会报错。 go语言的文件名不能包 ......
从源码深入理解读写锁(golang-RWMutex)
环境:go 1.19.8 在读多写少的情况下,即使一段时间内没有写操作,大量并发的读访问也不得不在Mutex的保护下变成串行访问,这种情况下,使用Mutex,对性能影响比较大。 所以就要区分读写操作。如果某个读操作的g持有了锁,其他读操作的g就不必等待了,可以并发的访问共享变量,这样就可以将串行的读 ......
golang推荐的命名规范
二 golang推荐的命名规范 很少见人总结一些命名规范,也可能是笔者孤陋寡闻, 作为一个两年的golang 开发者, 我根据很多知名的项目,如 moby, kubernetess 等总结了一些常见的命名规范。 命名规范可以使得代码更容易与阅读, 更少的出现错误。 文件命名规范 由于文件跟包无任何关 ......
# vue 使用 threejs 实现实景看房效果 demo
vue 使用 threejs 实现实景看房效果 demo 关于这个 threejs 实现 VR 看房效果也超级简单,只需要提供一个思路的话就可以了其实,首先需要一个房间结构的贴图,这个贴图网上有,当然找个合适的也不好找,我找了一上午在别人的 demo 里面扣了一张出来,代码都是一样的,稍微说一下思路 ......
golang基础知识
一 golang基础知识 Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种计算机编程语言语言。 设计初衷 Go语言是谷歌推出的一种的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程 ......
golang 解析处理word文档扩展包
github.com/unidoc/unioffice 该扩展包对word操作功能比较全,但为商业使用,注册后有100次的试用,具体使用就不详细说明了,具体可以看 https://github.com/unidoc/unioffice-examples github.com/carmel/gooxm ......
自动驾驶图像全景分隔,基于HRnetSegmentation从训练工程到tensorRT工程部署Demo闭环一套,包含训练工程及?
自动驾驶图像全景分隔,基于HRnetSegmentation从训练工程到tensorRT工程部署Demo闭环一套,包含训练工程及部署工程,和环境的配置说明,已在实际项目中使用。大厂自动驾驶工程师沉淀实实在在的工作经验总结资料是一线自动驾驶工程师辛苦工作的结果。ID:3150671806789047 ......