10 2021 档案
摘要:第一步、先从Xclient上下载下来Navicat Premium 12.0.27 for Mac(破解版)【这是最保守的版本,安装这个版本一定能够成功,也可以在这个网站里面下载其他版本的navicat尝试安装,本人安装的这个版本的navicat不能连接mongoDB,你也可以尝试其他的版本】 第二
阅读全文
摘要:QPS是什么 我们先回忆一下,QPS的概念如下所示: QPS(Query Per Second):每秒请求数,就是说服务器在一秒的时间内处理了多少个请求。 那我们怎么估出每秒钟能处理多少请求呢? OK,用日志来估计!那日志怎么记录呢,细分下来,有两种方式。 方式一:自己在接口里记录 这种方式指的是在
阅读全文
摘要:真实面试小场景: 经过八股和算法的交锋,老三松了口气,都hold住了。只见面试官微微一笑,“其实,我真正想问的是……你觉得扫码登录应该怎么实现。” 老三:“啊……这个,哦……那个,这个就这么,然后……额……嗯……” 面试官:“了解了,回去等通知吧。” 完…… 好了,铺垫结束,进入我们今天的主题,扫码
阅读全文
摘要:https://blog.csdn.net/weixin_43443216/article/details/88086217
阅读全文
摘要:# 描述 sync.Once 是 Golang package 中使方法只执行一次的对象实现,作用与 init 函数类似。但也有所不同。 init 函数是在文件包首次被加载的时候执行,且只执行一次 sync.Onc 是在代码运行中需要的时候执行,且只执行一次 当一个函数不希望程序在一开始的时候就被执
阅读全文
摘要:sync.Once.Do(f func())是一个挺有趣的东西,能保证once只执行一次,无论你是否更换once.Do(xx)这里的方法,这个sync.Once块只会执行一次。 package main import ( "fmt" "sync" "time" ) var once sync.Onc
阅读全文
摘要:runtime.Gosched(),用于让出CPU时间片,让出当前goroutine的执行权限,调度器安排其它等待的任务运行,并在下次某个时候从该位置恢复执行。这就像跑接力赛,A跑了一会碰到代码runtime.Gosched()就把接力棒交给B了,A歇着了,B继续跑。 runtime.Goexit(
阅读全文
摘要:unsafe,顾名思义,是不安全的,Go定义这个包名也是这个意思,让我们尽可能的不要使用它,如果你使用它,看到了这个名字,也会想到尽可能的不要使用它,或者更小心的使用它。 虽然这个包不安全,但是它也有它的优势,那就是可以绕过Go的内存安全机制,直接对内存进行读写,所以有时候因为性能的需要,会冒一些风
阅读全文
摘要:‘…’ 其实是go的一种语法糖。 它的第一个用法主要是用于函数有多个不定参数的情况,可以接受多个不确定数量的参数。 第二个用法是slice可以被打散进行传递。 下面直接上例子: func test1(args ...string) { //可以接受任意个string参数 for _, v:= ran
阅读全文
摘要:一、前言 go语言类似Java JUC包也提供了一些列用于多线程之间进行同步的措施,比如低级的同步措施有 锁、CAS、原子变量操作类。相比Java来说go提供了独特的基于通道的同步措施。本节我们先来看看go中CAS操作 二、CAS操作 go中的Cas操作与java中类似,都是借用了CPU提供的原子性
阅读全文
摘要:atomic 原子操作 原子操作即是进行过程中不能被中断的操作,针对某个值的原子操作在被进行的过程中,CPU绝不会再去进行其他的针对该值的操作。为了实现这样的严谨性,原子操作仅会由一个独立的CPU指令代表和完成。原子操作是无锁的,常常直接通过CPU指令直接实现。 事实上,其它同步技术的实现常常依赖于
阅读全文
摘要:互斥锁 前言 本次的代码是基于go version go1.13.15 darwin/amd64 什么是sync.Mutex sync.Mutex是Go标准库中常用的一个排外锁。当一个goroutine获得了这个锁的拥有权后, 其它请求锁的goroutine就会阻塞在Lock方法的调用上,直到锁被释
阅读全文
摘要:☁ test3 go run --trace main.goflag provided but not defined: -traceusage: go run [build flags] [-exec xprog] package [arguments...]Run 'go help run' f
阅读全文
摘要:香港身份证(英语:Hong Kong Identity Card)样式 由香港特别行政区入境事务处签发,为香港居民的主要身份证明文件。香港法例第177章《人事登记条例》规定,凡年满11岁或在香港逗留多于180天人士,必须于年满11岁后或抵港30天内登记领取身份证。每张香港身份证均有持证人的姓名、出生
阅读全文
摘要:HelloWorld.c #include "stdio.h" int main(int argc, char const *argv[]) { printf("Hello World!\n"); return 0; } 源文件生成预处理文件: gcc -E HelloWorld.c -o Hell
阅读全文
摘要:1. 使用 homebrew 安装 rbenv brew install rbenv 2.常用命令解释 rbenv install --list # 列出所有 ruby 版本 rbenv install 2.0.0-p247 # 安装需要的ruby版本 rbenv versions # 所有已安装的
阅读全文
摘要:package main import ( "errors" "fmt" "os" ) // CircleQueue 环形队列 type CircleQueue struct { maxSize int arr [5]int head int // 队首 tail int // 队尾 } func
阅读全文
摘要:本队列有问题, 单向的,需要优化尾环形队列 package main import ( "errors" "fmt" "os" ) type Queue struct { maxSize int arr [4]int // 数组模拟队列 front int // 指向队列的最前面 队首 rear i
阅读全文
摘要:package main import "fmt" type Node struct { Row int Col int Value int } // 稀疏数组 func main() { sparse := ToSparse() ToArray(sparse) } // ToArray 稀疏数组恢
阅读全文
摘要:HomeBrew简介 我们在使用Linux系统的时候,都很喜欢 (Debian/Ubuntu)系列的apt包管理系统和(Redhat/Fedora)系列的yum包管理系统。Mac OS X系统下面有apple的官方Mac App Store。但是好多软件是找不到的,所以我们也向在苹果下找到一款比较方
阅读全文
摘要:添加依赖 require ( github.com/99designs/gqlgen v0.11.3 github.com/vektah/gqlparser/v2 v2.0.1 ) 编写SCHEMA 在项目根目录创建文件夹,graph,在graph文件夹中新建schema.graphqls文件,在其
阅读全文
摘要:官方文档地址 :https://gqlgen.com/getting-started/ 本教程将带您完成使用 gqlgen 构建 GraphQL 服务器的过程,该服务器可以: 返回待办事项列表 创建新的待办事项 在待办事项完成时标记它们 您可以在此处找到本教程的完成代码 设置项目 为您的项目创建一个
阅读全文