![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go
Cabinathor
这个作者很懒,什么都没留下…
展开
-
go 特征二【】
go语言可以直接返回原创 2014-09-18 20:06:52 · 448 阅读 · 0 评论 -
go- 特点
总结Go语言的特点Go语言的优点:部署简单Go 编译生成的是一个静态可执行文件,除了 glibc 外没有其他外部依赖。这让部署变得异常方便:目标机器上只需要一个基础的系统和必要的管理、监控工具,完全不需要操心应用所需的各种包、库的依赖关系,大大减轻了维护的负担。这和 Python 有着巨大的区别。由于历史的原因,Python 的部署工具生态相当混乱【比如 setupto原创 2015-08-11 20:03:42 · 568 阅读 · 0 评论 -
go-内存分配器
整合两个文章,FixAlloc 和 MSpan。内存模型如下:FixAllocFixAlloc称不上是核心组件,辅助实现整个内存分配器核心的一个基础工具。引入FixAlloc的目的只是用来分配MCache和MSpan两个特定的对象,所以内存分配器中有spanalloc和cachealloc两个组件。MCache和MSpan两个结构在mallo转载 2015-08-11 21:09:26 · 689 阅读 · 0 评论 -
go-goroutine中的共享变量
转自 : http://www.cnblogs.com/sevenyuan/archive/2013/04/18/3029388.htmlHappens Before对于一个goroutine来说,虽然指令会被编译器乱序重排,但它其中变量的读, 写操作执行表现必须和从所写的代码得出的预期是一致的。但是在两个不同的goroutine对相同变量操作时, 可能因为指令重排转载 2015-08-11 09:58:51 · 2831 阅读 · 0 评论 -
go-goroutine 调度
转自 知乎Go runtime的调度器:在了解Go的运行时的scheduler之前,需要先了解为什么需要它,因为我们可能会想,OS内核不是已经有一个线程scheduler了嘛?熟悉POSIX API的人都知道,POSIX的方案在很大程度上是对Unix process进场模型的一个逻辑描述和扩展,两者有很多相似的地方。 Thread有自己的信号掩码,CPU affinity等。但是很原创 2015-08-11 13:22:37 · 1325 阅读 · 0 评论 -
Go-goroutine 不可滥用
1 goroutine的指针传递是不安全的2 goroutine增加了函数的危险系数3 goroutine的滥用陷阱处理方法1 当启动一个goroutine的时候,如果一个函数必须要传递一个指针,但是函数层级很深,在无法保证安全的情况下,传递这个指针指向对象的一个克隆,而不是直接传递指针。2 什么时候使用goroutine:有两种思维逻辑会想到使用goroutine:转载 2015-08-11 09:31:29 · 2014 阅读 · 0 评论 -
go array和slice区别
来源http://www.2cto.com/kf/201401/274536.html转载 2014-09-19 22:21:52 · 4029 阅读 · 0 评论 -
golang使用时间作为种子生成随机数
如果你运行随机数rand.Intn(n)这个函数,会发现每次sh原创 2014-09-17 20:34:25 · 3989 阅读 · 0 评论 -
go 特征
简洁的变量声明和赋值拿最简单的声明变量和赋值来看,下面这一句完成了声明类型到赋值,最后还有那个常见的分号作为语句的结束。var i int = 10;这个一点都不简洁对吧?为什么非要有“var”?为什么不能自己推导变量类型?为什么结尾非要加上分号?这三个问题,我相信Go语言的设计者也问过,并且都针对性的给了改进。重新来过。i := 10怎么样?“:=”是声明转载 2014-09-14 17:41:09 · 561 阅读 · 0 评论 -
go 学习1【基本语法】
package mainimport ("fmt""time""math""math/rand")func main() {s := []int{1,2,3,4}for i := 0 ; i fmt.Printf("%d ", s[i])if i == 3 {fmt.Println("The length of s is", len(原创 2014-09-16 21:49:27 · 429 阅读 · 0 评论 -
go 最大的无符号数
这里其实主要是翻译如何构造最大的无符号数。对于确定位数的原创 2014-09-22 20:21:39 · 901 阅读 · 0 评论 -
go 学习2【基本语法】
1.go的基本数据类型有boolstringint int8 int16 int32 int64uint uint8 uint16 uint32 uint64 uintptrbyte // alias for uint8rune // alias for int32 // represents a Unicode code pointfloat32 float原创 2014-09-20 10:04:13 · 479 阅读 · 0 评论 -
go-内存分配
对go语言内存分配过程整理。原文为设计和实现。Go的内存分配器主要也是解决小对象的分配管理和多线程的内存分配问题。内存分配器以32k作为对象大小的定夺标准,小于等于32k的内存对象一律视为小对象,而大于32k的对象就是大对象了。go语言内存分配模型如图:Cache、Central、Heap是三个核心组件。go语转载 2015-08-11 21:40:49 · 4834 阅读 · 0 评论