GO语言基础入门--类型

类型 本Go语言基础入门内容均来自于《Go语言编程》,个人记录,加深理解。 Go语言内置以下这些基础类型:  布尔类型: bool。  整型: int8、 byte、 int16、 int、 uint、 uintptr等。  浮点类型: float32 、 float64。  复数类型: complex64、 complex128。  字符串: string。  字符类型: rune。  错误类型: error。 此外, Go语言也支持以下这些复合类型:  指针( pointer...阅读全文

2015-04-18 18:58 chenqijing2
阅读:24693 评论:2

go学习笔记_Routine和Channel

文章来源:http://www.itnose.net go语言并发编程上 傍晚抽空学习了下go语言的并发编程,从goroutine到channel机制,从开始的稀里糊涂到现在拨开云雾见太阳的感觉,学习的过程总是令人亢奋的!当然目前的理解还是不够透彻的。下篇将举例来分析下。 goroutine 类似开辟进程、线程做法,go语言所采用的为 goroutine 。用法极其简单,也就是使用go关键字,使用方法有两种: 定义一个函数functionName,要异步调用时使用语句go functionNam...阅读全文

阅读:2282 评论:0

golang技术随笔(二)理解goroutine

进程、线程和协程 要理解什么是goroutine,我们先来看看进程、线程以及协程它们之间的区别,这能帮助我们更好的理解goroutine。 进程:分配完整独立的地址空间,拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程的切换只发生在内核态,由操作系统调度。 线程:和其它本进程的线程共享地址空间,拥有自己独立的栈和共享的堆,共享堆,不共享栈,线程的切换一般也由操作系统调度(标准线程是的)。 协程:和线程类似,共享堆,不共享栈,协程的切换一般由程序员在代码中显式控制。 进程和线程的切换主要依赖于时...阅读全文

2015-03-05 21:20 justaipanda
阅读:4246 评论:1

Golang中的各种坑(持续更新)

下面的总结是最近Golang开发中遇到的,和互联网上搜集到的坑,会持续更新: 字符串不是以\x0结束作为判断的 无锁队列只是在单核下,多核同样需要锁,需要线程间调度 格式化时间字符串只能用2006 01 02 15 04 05(时间原点), 并且在time/format.go写死了: 2006-01-02T15:04:05Z07:00 其实这是有意义的,每个字段正好对应: 1 2 3 4 5 6 7 月 日 时 分 秒 年 时区 当多个channel都处于就绪状态时,激活channel是随机的,...阅读全文

2014-03-05 22:44:56 华子
阅读:4425 评论:0

go学习笔记_Routine和Channel下

go语言并发编程下 上文从基础层面讲解了goroutine 和 channel ,关于如何使用都停留下嘴皮子上,因此下篇选用几个最简单的例子来巩固下。另外推荐下自己的个人博客,你可以先点进行看下内容是否对您有帮助,在选择收藏或者直接x掉。 个人博客地址:Colourful Code 正文 首先,上文说到channel 有两种情况: 未分配缓存 分配一定缓存 例子从这两点入手给出。 未分配缓存 package main import "fmt" //求和函数sum func sum(a []int...阅读全文

阅读:5278 评论:1

理解Golang包导入

转自:http://tonybai.com/2015/03/09/understanding-import-packages/ Golang使用包(package)这种语法元素来组织源码,所有语法可见性均定义在package这个级别,与Java 、python等语言相比,这算不上什么创新,但与C传统的include相比,则是显得“先进”了许多。 Golang中包的定义和使用看起来十分简单: 通过package关键字定义包: package xxx 使用import关键字,导入要使用的标准库包或第...阅读全文

2015-06-03 11:53 sevenyuan
阅读:23032 评论:1