随笔分类 -  Go语言的划水日常

摘要:Go并发编程模型在低层是由操作系统所提供的线程库支撑的。 #线程 线程可视为进程中的控制流,一个进程至少会包含一个线程。一个进程可以包含多个线程。拥有多个线程的进程可以并发执行多个任务,并且及时某个或某些任务被阻塞,也不会影响其他任务正常执行。 一个进程中的所有线程都拥有自己的线程栈,并以此存放自己 阅读全文
posted @ 2021-11-12 22:17 布尔先生 阅读(445) 评论(0) 推荐(0) 编辑
摘要:#并发与并行 并发程序是指可以被同事发起执行的程序,并行程序可以在并行的硬件上执行的并发程序,这两者稍有不同,并发程序代表了所有可以实现并发行为的程序,其中包含了并行程序。 串行程序所有代码的先后顺序都是确定的,并发程序中只有部分代码有序,其中有一些代码的执行顺序无明确指定,这被称为不确定性。 并发 阅读全文
posted @ 2021-11-11 20:42 布尔先生 阅读(1508) 评论(0) 推荐(0) 编辑
摘要:最近在学校,写论文写不下去,还是看书学学技术,夯实下并发编程这块 Go相关基础知识使用可从下面的代码中学到 func chatting(){ inputReader := bufio.NewReader(os.Stdin) fmt.Println("Please input your name!") 阅读全文
posted @ 2021-11-11 15:55 布尔先生 阅读(111) 评论(0) 推荐(0) 编辑
摘要:回家想重新学习下go的源码,然后在win上安装问题多多,遂整理一下 一、Go安装包下载地址: 国情原因 https://golang.org/ 偶尔会访问不了,新手要下载 Go 官方的提供的安装包经常会受阻。解决方法是使用可信任的其他镜像进行下载,推荐这两个: https://golang.goog 阅读全文
posted @ 2021-02-16 10:46 布尔先生 阅读(2443) 评论(0) 推荐(0) 编辑
摘要:GPM模型 定义于src/runtime/runtime2.go G: Gourtines(携带任务), 每个Goroutine对应一个G结构体,G保存Goroutine的运行堆栈,即并发任务状态。G并非执行体,每个G需要绑定到P才能被调度执行。 P: Processors(分配任务), 对G来说, 阅读全文
posted @ 2020-11-14 16:59 布尔先生 阅读(4877) 评论(0) 推荐(0) 编辑
摘要:一、Golang的new和make方法 new和make方法是GO语言内建的两个方法,主要用来创建分配类型内存,但二者有些许不同: 变量声明: var i int var str string 通过var关键字声明变量,然后在程序中使用,我们不指定其默认值时,这些变量的默认值也是其零值,(PS:建议 阅读全文
posted @ 2020-11-14 15:59 布尔先生 阅读(156) 评论(0) 推荐(0) 编辑
摘要:影响mysql的性能因素 业务需求对MySQL的影响(合适合度) 存储定位对MySQL的影响 不适合放进MySQL的数据 二进制多媒体数据 流水队列数据 超大文本数据 需要放进缓存的数据 系统各种配置及规则数据 活跃用户的基本信息数据 活跃用户的个性化定制信息数据 准实时的统计信息数据 其他一些访问 阅读全文
posted @ 2020-10-17 21:20 布尔先生 阅读(4687) 评论(0) 推荐(0) 编辑
摘要:MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务! 事务基本要素: 事务是由一组SQL语句组成的逻辑处理单元,具有4个属性,通常简称为事务的 阅读全文
posted @ 2020-10-17 21:13 布尔先生 阅读(686) 评论(0) 推荐(0) 编辑
摘要:最近又开始面试了,整理一些面试的高频考点吧。有幸参与一次社招面试,看的还是底层知识: 1、数据库存储引擎分类: (1):存储引擎主要有: 1. MyISAM(不支持事务) , 2. InnoDB(支持事务、行级锁定和外键), 3. Memory, 4. Archive, 5. Federated 。 阅读全文
posted @ 2020-10-16 11:09 布尔先生 阅读(348) 评论(0) 推荐(0) 编辑
摘要:一、 钩子 钩子是一个在 插入 / 查询 / 更新 / 删除 之前或之后被调用的方法。 在一个模型中定义特殊的方法,它将会在插入,更新,查询,删除的时候被自动调用,如果任何的回调抛出错误,GORM 将会停止将要执行的操作并且回滚当前的改变。 // 开启事务 BeforeSave BeforeCrea 阅读全文
posted @ 2020-09-21 15:36 布尔先生 阅读(7017) 评论(0) 推荐(0) 编辑
摘要:在实习这段时间接触到了Grom框架的使用,很好用,有必要整理下其用法: 一、CRUD相关 1. 查询 // 获取第一条记录,按主键排序 db.First(&user) //// SELECT * FROM users ORDER BY id LIMIT 1; // 获取一条记录,不指定排序 db.T 阅读全文
posted @ 2020-09-20 18:23 布尔先生 阅读(3743) 评论(0) 推荐(0) 编辑
摘要:存储方式区分 根据存储方式的不同,MySQL 中常用的索引在物理上分为 B-树索引和 HASH 索引两类,两种不同类型的索引各有其不同的适用范围。 1) B-树索引 B-树索引又称为 BTREE 索引,目前大部分的索引都是采用 B-树索引来存储的。B-树索引是一个典型的数据结构,其包含的组件主要有以 阅读全文
posted @ 2020-08-31 15:09 布尔先生 阅读(315) 评论(0) 推荐(0) 编辑
摘要:1、上传: scp /path/file(这部分为本地的路径) user(远端目标用户名)@host(远端目标IP):/pathorfile(文件存储路径) 2、下载: scp user(远端用户名)@host(远端IP):/path/file(下载文件在远端的路径) localpathorfile 阅读全文
posted @ 2020-08-28 15:44 布尔先生 阅读(1447) 评论(0) 推荐(0) 编辑
摘要:###string到int int,err := strconv.Atoi(string) ###string到int64 int64, err := strconv.ParseInt(string, 10, 64) //第二个参数为基数(2~36), //第三个参数位大小表示期望转换的结果类型,其 阅读全文
posted @ 2020-08-20 10:15 布尔先生 阅读(251) 评论(0) 推荐(0) 编辑
摘要:1.获取当前时间 // 获取当前时间,返回的是Time类型 t := time.Now() fmt.Println(t) 2.获取时间戳 1970-01-01开始经过的秒数。 // 获取当前时间的时间戳 s := time.Now().Unix() // 获取某个Time时间的时间戳。 // t是T 阅读全文
posted @ 2020-08-19 20:38 布尔先生 阅读(893) 评论(0) 推荐(0) 编辑
摘要:工作中需要创建连续的时间片,找了许久,没找到Go语言快速生成时间片的函数包,算了,自己写一个吧 该函数类似于python中的pd.date_range()函数,功能相似,但是略有不同。 函数功能说明: Start, End 为起止时间 根据feq的不同,当feq大于0时,可根据需要分的时间片个数分; 阅读全文
posted @ 2020-08-19 20:37 布尔先生 阅读(376) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
🚀
回顶
收起