神奇的go语言(高级应用)
时间:2022-05-05
本文章向大家介绍神奇的go语言(高级应用),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
其实有了上一篇的基本语法,我们就可以做一些简单的事情,比如说文件服务器。或许大家有点不相信,没关系。下面开始用代码来说明问题,其实整个代码的内容不会超过十行。
package main
import "net/http"
func main() {
h := http.FileServer(http.Dir("/home"))
http.ListenAndServe(":8888", h)
}
有了上面的代码,直接输入go run share.go。说了这么多,大家可以继续看go语言下的高级应用是怎么使用的。
(1)并发运行
package main
import "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 main
import "fmt"
func show(c chan int) {
for {
data := <- c
if 1 == data {
fmt.Print("receive ")
}
}
}
func main() {
c := make(chan int)
go show(c)
for {
c <- 1
fmt.Print("send ")
}
}
(3) 多channel访问
[cpp] view plain copy
package main
import "fmt"
import "time"
func fibonacci(c, quit chan int) {
x, y := 1, 1
for {
select {
case c <- x:
x, y = y, x+y
case <- 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)
}
}
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android Selector 按下修改背景和文本颜色的实现代码
- Android使用RecyclerView实现投票系统
- Android Selector获取焦点后文本背景修改的实现代码
- 基于SceneForm实现子弹射击(绘制子弹运行轨迹)
- android实现清理缓存功能
- Android实现 Shape属性gradient 渐变效果
- 1K GitHub star+ 的项目是如何炼成的?
- Android属性动画实现图片从左到右逐渐消失
- Android实现清除应用缓存功能
- VBlog的代码结构,使用vue-element,vue-vant组件开发的纯前端博客
- Android仿微信视屏悬浮窗效果
- Android仿QQ可拉伸头部控件
- android使用surfaceview+MediaPlayer播放视频
- Android性能之冷启动优化详析
- Android自定义View实现地铁显示牌效果