神奇的go语言(高级应用)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
其实有了上一篇的基本语法,我们就可以做一些简单的事情,比如说文件服务器。或许大家有点不相信,没关系。下面开始用代码来说明问题,其实整个代码的内容不会超过十行。
package mainimport "net/http"func main() {h := http.FileServer(http.Dir("/home"))http.ListenAndServe(":8888", h)}
有了上面的代码,直接输入go run share.go。说了这么多,大家可以继续看go语言下的高级应用是怎么使用的。
(1)并发运行
package mainimport "fmt"
import "time"func show() {for {fmt.Print("child ");time.Sleep(10000)}
}func main() {go show()for {fmt.Print("parent ")time.Sleep(10000)}
}
(2)channel通信
package mainimport "fmt"func show(c chan int) {for {data := <- cif 1 == data {fmt.Print("receive ")}}
}func main() {c := make(chan int)go show(c)for {c <- 1fmt.Print("send ")}
}
(3) 多channel访问
package mainimport "fmt"
import "time"func fibonacci(c, quit chan int) {x, y := 1, 1for {select {case c <- x:x, y = y, x+ycase <- quit:fmt.Println("quit")return}}
}func show(c, quit chan int) {for i := 0; i < 10; i ++ {fmt.Println(<- c)}quit <- 0}func main() {data := make(chan int)leave := make(chan int)go show(data, leave)go fibonacci(data, leave)for {time.Sleep(100)}}
神奇的go语言(高级应用)相关推荐
- Go 学习推荐 —(Go by example 中文版、Go 构建 Web 应用、Go 学习笔记、Golang常见错误、Go 语言四十二章经、Go 语言高级编程)
Go by example 中文版 Go 构建 Web 应用 Go 学习笔记:无痕 Go 标准库中文文档 Golang开发新手常犯的50个错误 50 Shades of Go: Traps, Gotc ...
- 鼠标绘图 c语言,c语言高级编程技术教程 图形显示方式与鼠标输入.doc
c语言高级编程技术教程 图形显示方式与鼠标输入 c语言高级编程技术教程 图形显示方式和鼠标输入 图形显示方式和鼠标输入 问题的提出编写程序,使用鼠标进行如下操作:按住鼠标器的任意键并移动,十字光 标将 ...
- 易语言mysql清空一个表_易语言高级表格清空.doc
易语言高级表格清空 篇一:表格高级实用实解 1.编辑技巧 2.单元格内容的合并 3.条件显示 4.自定义格式 5.绘制函数图象 6.自定义函数 7.矩阵计算 8.自动切换输入法 9.批量删除空行 10 ...
- c语言高级程序设计第五版PDF,C语言高级编程.pdf
C语言高级编程 概述 由几个测试程序说开去 预编译与宏 高级预编译介绍 宏的高级用法 变量 变量分类详细解析 我的变量去哪儿了? 大小端对变量的影响 内存与指针 常见内存使用错误大观 指针,又是指针! ...
- 高级编程中C语言属于,c语言高级编程
c语言高级编程 C高级编程 责任编辑:admin 更新日期:2005-8-6 深入了解C语言(函数的参数传递和函数使用参数的方法) tangl_99(原作) 关键字 C语言,汇编,代码生成,编译器 C ...
- C语言高级教程-C语言数组(六):变长数组
C语言高级教程-C语言数组(六):变长数组 一.本文的编译环境 二.一维数组在执行期间确定长度 三.二维数组在执行期间确定长度 四.一维变长数组实例 五.完整程序 5.1 Main.h 文件程序 5. ...
- C语言高级教程-C语言数组(三)
C语言高级教程之数组教程 本文的编译环境 一.前文:C语言数组(一.二)的链接 1.1.C语言数组一文章链接 1.2.C语言数组二文章链接 二.数组的初始化 2.1.数组的初始化的几种方式 三.数组和 ...
- c语言比其他语言都高级,9.以下说法中正确的是( ) a.C语言比其他语言高级 b.C语言不用编译就能被计算机执行 c.C语言以接近英语国...
选项选择c.C语言是一门通用计算机编程语言,应用广泛.从语言角度没有准确的标准说比其他语言高级. C语言要经过编译才能运行. JAVA语言比C语言更晚. 所以上面答案有C合理 C语言的设计目标是 提供 ...
- ElasticSearch DSL语言高级查询+SpringBoot
1 环境准备 1.1 Es数据准备 https://gitee.com/zhurongsheng/elasticsearch-data/blob/master/es.data 描述: 执行后查看结果. ...
- bnu1209 1--0的神奇游戏 C语言版
北京师范大学珠海分校 Judge Online of ACM ICPC 1209 1-->0的神奇游戏 C语言版 #include <stdio.h> int main(){ int ...
最新文章
- Chrome浏览器偶尔提示错误net::ERR_EMPTY_RESPONSE的解决方法
- 6.1 Tensorflow笔记(基础篇):队列与线程
- 混淆视听的感脚(二)
- 使用postman发送HttpServletRequest请求
- 解决vs2019中暂时无法为.net core WinForms使用 Designer 的临时方法
- 安装mysql时出现的缺少msvcr120.dll和msvcp120.dll问题的解决方案
- Ubuntu 16.04 LTS安装Docker并使用加速器
- ******2:***常用工具排行榜-《百晓生兵器谱》
- APP通用测试用例~易用性
- ipxspx协议linux,win7\win10 IPX协议自动安装器
- SDK学院--易接网游SDK中间件接入使用说明-Unity3D游戏接口
- mongo异常无法启动-处理方法
- java 水晶报表_水晶报表-crystal report
- python爬虫-《笔趣看》网小说《悟空看私聊》
- 关于1KB病毒的清除
- Hotpot - 让使用CKettle像吃火锅一样爽
- 简述你对人工智能未来发展的看法?
- 阿里巴巴年度技术总结 - 人工智能在搜索的应用和实践
- Excel中IF函数的使用
- Linux 系统安全应用