10 2015 档案
摘要:channel取数据时未被赋值将被阻塞,可以使用这一机制来完成事件的监听 wg := new(sync.WaitGroup) wg.Add(2) event := make(chan bool) //函数 go func() { defer wg.Done() for i := 0; i...
阅读全文
摘要:老问题:模拟一个售票窗口进行售票先定义类型Ticket(车票)和Conductor(销售员)--偷懒了,把售票和产票都交给Conductor了package utilimport ()//--------------------------------type Ticket struct { ID ...
阅读全文
摘要:func Calculate(id int) { fmt.Println(id)} 使用go来实现并发func main() { for i := 0; i < 100; i++ { go Calculate(i) //单一使用go就可以实现多协成 } time.Sleep(1e9 * 2) ...
阅读全文
摘要://1.定义一个接口type Run interface { Runing()} //2.定义一个函数类型type Runer func() //3.让函数直接实现接口func (self Runer) Runing() { self()} //调用 var run Runer =...
阅读全文
摘要:boy := util.Boy{util.Person{"Eric", 19, "boy"}, "1"}var boyClone interface{} = boy 如何判断 boyClone是否是boy类型呢?if i, ok := boyClone.(util.Boy); ok { fmt.P...
阅读全文
摘要:这里interface{}就相当于c#,java中的object, boy := util.Boy{util.Person{"Eric", 19, "boy"}, "1"} girl := util.Girl{util.Person{"Jessica", 19, "girl"}, "...
阅读全文
摘要:go的继承是使用匿名字段来实现的package util//----------------Person----------------type Person struct { Name string Age int Sex string}//--------------------------...
阅读全文
摘要:go单元测试需要按照gotest的规范来编写: 1、文件名必须以xx_test.go命名 2、方法必须是Test[^a-z]开头 3、方法参数必须 t *testing.T 在运行gotest的时候出现 ~/Desktop/goproject/src [no test files]...
阅读全文
摘要:public Link GetLink([FromUri] FileRequest fileRequest) { if (ModelState.IsValid) { var xml = WebConfi...
阅读全文