自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

技术Blog

  • 博客(4)
  • 资源 (5)
  • 收藏
  • 关注

原创 Go 语言中 defer 使用时有哪些陷阱?

阅读上面这段代码,首先我们定义一个类型为 `int64` 的变量 `count`,然后使用 `defer` 语句执行一个匿名函数,匿名函数传递参数为 `count + 1`,最终 `main` 函数输出 `100`,defer 执行的匿名函数输出 `1`。因为在执行 `defer` 语句时,执行了 `count + 1`,并先将其存储,等到 `defer` 所在的函数体 `main` 执行完,再执行 `defer` 语句调用的匿名函数的函数体中的代码。**defer 语句执行匿名函数,参数预处理。

2024-01-14 23:00:00 631 1

原创 Go 语言为什么不支持并发读写 map?

原生支持并发读写操作,在操作时需要先获取互斥锁,反而会降低只有并发读操作时的性能。只存在并发读操作,如果原生支持并发读写,即降低了并发读操作的性能。大家好,我是 frank,「Golang 语言开发栈」公众号作者。通过阅读源码,我们了解到在运行时检测是否存在对。进行并发读操作,仅在少数情况下是使用。的写操作,如果存在,则返回致命错误。并非原子操作,不支持并发读写操作。,Go 官方的说法是在多数情况下。的并发写操作,如果存在,要结合。,在运行时,返回致命错误。,如果有,则返回致命错误。在大多数情况下是使用。

2024-01-06 23:00:00 643

原创 Go 语言为什么建议多使用切片,少使用数组?

数组和切片在作为函数参数传递时,属于值传递,如果使用数组,特别是大数组时,我们需要特别小心,可以考虑使用数组指针;追加元素,当切片容量不足时可以自动扩容切片,但是会涉及到内存分配,原切片容量小于 1024,新切片容量是原切片容量的 2 倍;如果原切片容量大于等于 1024,新切片容量按照原切片容量的 1/4 步长循环扩容,直到新切片的容量大于等于新切片的长度为止。需要注意的是,虽然切片可以自动扩容,但在扩容时会涉及内存分配,造成系统开销,尽量在创建切片时,预估出切片的最终容量。

2023-12-31 23:00:00 665

原创 Go 语言为什么很少使用数组?

如果数组长度小于等于 4 时,在编译时会对数组做内存优化,程序启动时在栈区初始化数组,我们在使用数组类型时,也可以注意一下这一点。替代,这实际上是 Go 语言中声明数组的语法糖,编译时通过数组的赋值,自动推断数组的长度,我们可以使用内置函数。二是值传递,大数组要特别小心,如果无法避免使用大数组,可以使用数组指针。数组的长度和数组元素的类型共同决定数组的类型,不同类型的数组之间不可以比较,否则在编译时会报错。在 Go 语言中,数组是一块连续的内存,数组不可以扩容,数组在作为参数传递时,属于值传递。

2023-12-24 23:00:00 364

AngularJS权威教程

AngularJS权威教程 PDF影印版

2015-01-20

LAMP环境搭建

LAMP环境搭建(含源码包下载地址)ios100-知识库(原创)

2013-02-16

CSS 2.0 中文手册.chm

CSS 2.0 中文手册.chm 帮助文档

2013-01-24

雇员信息管理系统Model1模式(PHP+mysql)带分页

雇员信息管理系统Model1模式(PHP+mysql)带分页

2012-04-30

雇员管理系统Model1模式(PHP+mysql)

雇员信息管理系统Model1模式(PHP+mysql)

2012-04-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除