Go语言实现定时器的方法
本文实例讲述了Go语言实现定时器的方法。分享给大家供大家参考。具体实现方法如下:
package main
import (
"fmt"
"time"
)
func testTimer1() {
go func() {
fmt.Println("test timer1")
}()
}
func testTimer2() {
go func() {
fmt.Println("test timer2")
}()
}
func timer1() {
timer1 := time.NewTicker(1 * time.Second)
for {
select {
case <-timer1.C:
testTimer1()
}
}
}
func timer2() {
timer2 := time.NewTicker(2 * time.Second)
for {
select {
case <-timer2.C:
testTimer2()
}
}
}
func main() {
go timer1()
timer2()
}
希望本文所述对大家的Go语言程序设计有所帮助。
相关推荐
-
go语言检测文件是否存在的方法
本文实例讲述了go语言检测文件是否存在的方法.分享给大家供大家参考.具体分析如下: go语言检测文件是否存在,首先创建一个FileInfo,如果不报错,再通过 IsDir()检查是否是目录 复制代码 代码如下: finfo, err := os.Stat("filename.txt") if err != nil { // no such file or dir return } if finfo.IsDir() { // it's a file } else
-
go语言睡眠排序算法实例分析
本文实例讲述了go语言睡眠排序算法.分享给大家供大家参考.具体分析如下: 睡眠排序算法是一个天才程序员发明的,想法很简单,就是针对数组里的不同的数开多个线程,每个线程根据数的大小睡眠,自然睡的时间越长的,数越大,哈哈,搞笑吧,这种算法看起来很荒唐,但实际上很天才,它可以充分利用多核cpu进行计算. 复制代码 代码如下: package main import ( "fmt" "time" ) func main() { tab := []in
-
go语言中使用timer的常用方式
本文实例总结了go语言中使用timer的常用方式.分享给大家供大家参考.具体分析如下: 下面三段代码(A,b,C)的功能都是在5分钟后执行指定的函数的go语言代码: 复制代码 代码如下: // (A) time.AfterFunc(5 * time.Minute, func() { fmt.Printf("expired") } // (B) create a Timer object timer := time.NewTimer(5 * time.Minute) <-t
-
go语言通过反射获取和设置结构体字段值的方法
本文实例讲述了go语言通过反射获取和设置结构体字段值的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: type MyStruct struct { N int } n := MyStruct{ 1 } // get immutable := reflect.ValueOf(n) val := immutable.FieldByName("N").Int() fmt.Printf("N=%d\n", val) // prints
-
go语言执行windows下命令行的方法
本文实例讲述了go语言执行windows下命令行的方法.分享给大家供大家参考.具体如下: 在golang里执行windows下的命令行,例如在golang里面调用 del d:\a.txt 命令 复制代码 代码如下: package main import( "fmt" "os/exec" ) func main(){ c := exec.Command("cmd", "/C", "del
-
go语言通过odbc访问Sql Server数据库的方法
本文实例讲述了go语言通过odbc访问Sql Server数据库的方法.分享给大家供大家参考.具体如下: 这里需要用到go-odbc库,开源地址为:https://github.com/weigj/go-odbc 复制代码 代码如下: package main; import ( "fmt" "database/sql" _"odbc/driver" ) func main(){ conn,err := sql.O
-
GO语言延迟函数defer用法分析
本文实例讲述了GO语言延迟函数defer用法.分享给大家供大家参考.具体分析如下: defer 在声明时不会立即执行,而是在函数 return 后,再按照 FILO (先进后出)的原则依次执行每一个 defer,一般用于异常处理.释放资源.清理数据.记录日志等.这有点像面向对象语言的析构函数,优雅又简洁,是 Golang 的亮点之一. 代码1:了解 defer 的执行顺序 复制代码 代码如下: package main import "fmt" func fn(n int) int {
-
Go语言实现定时器的方法
本文实例讲述了Go语言实现定时器的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package main import ( "fmt" "time" ) func testTimer1() { go func() { fmt.Println("test timer1") }() } func testTimer2() { go func() { fmt.Println("test timer2&
-
Go语言中定时器cron的基本使用教程
cron是什么 cron的意思就是:计划任务,说白了就是定时任务.我和系统约个时间,你在几点几分几秒或者每隔几分钟跑一个任务(job),就那么简单. 前言 cron 是 robfig 开发的一个定时作业库,robfig 总是想的比别人早,给了我们这些 Gopher 不少急需的东西,想当年 revel 的出现也是这样的.看看 cron 的使用,还是一如既往的简洁明了,发现 Go 的世界里,有些产品还是有鲜明的个人特质的,那就是所谓的个人魅力吧?! 总之 robfig 开发的产品都是有一定超前性,比
-
Go语言实现定时器的原理及使用详解
目录 0. 前言 1. Timer定时器 1.1 time.NewTimer() 和 time.After() 1.2 time.AfterFunc 2. Ticker定时器 0. 前言 在进行并发编程时,有时候会需要定时功能,比如监控某个GO程是否会运行过长时间.定时打印日志等等. GO标准库中的定时器主要有两种,一种为Timer定时器,一种为Ticker定时器.Timer计时器使用一次后,就失效了,需要Reset()才能再次生效.而Ticker计时器会一直生效,接下来分别对两种进行介绍. 1
-
Go语言常用字符串处理方法实例汇总
本文实例汇总了Go语言常用字符串处理方法.分享给大家供大家参考.具体如下: 复制代码 代码如下: package main import ( "fmt" "strings" //"unicode/utf8" ) func main() { fmt.Println("查找子串是否在指定的字符串中") fmt.Println(" Contains 函数的用法")
-
go语言使用scp的方法实例分析
本文实例讲述了go语言使用scp的方法.分享给大家供大家参考.具体如下: 复制代码 代码如下: package main import ( "code.google.com/p/go.crypto/ssh" "crypto" "crypto/rsa" "crypto/x509" "encoding/pem" "fmt" "
-
Go语言文件操作的方法
本文实例讲述了Go语言文件操作的方法.分享给大家供大家参考.具体如下: 关闭文件: 复制代码 代码如下: func (file *File) Close() os.Error { if file == nil { return os.EINVAL } e := syscall.Close(file.fd) file.fd = -1 // so it can't be closed again if e != 0 { retu
-
CentOS 7下配置Ruby语言开发环境的方法教程
本文跟大家分享的是在CentOS 7下配置Ruby语言开发环境的方法教程,分享出来供大家参考学习,下面来看看详细的介绍: 安装Ruby 2.2 CentOS7存储库中的Ruby版本为2.0,但如果需要,可以使用RPM软件包安装2.2 1.添加CentOS SCLo软件集合存储库 [root@linuxprobe ~]# yum -y install centos-release-scl-rh centos-release-scl # set [priority=10] [root@linuxpr
-
Kotlin 语言中调用 JavaScript 方法实例详解
Kotlin 语言中调用 JavaScript 方法实例详解 Kotlin 已被设计为能够与 Java 平台轻松互操作.它将 Java 类视为 Kotlin 类,并且 Java 也将 Kotlin 类视为 Java 类.但是,JavaScript 是一种动态类型语言,这意味着它不会在编译期检查类型.你可以通过动态类型在 Kotlin 中自由地与 JavaScript 交流,但是如果你想要 Kotlin 类型系统的全部威力 ,你可以为 JavaScript 库创建 Kotlin 头文件. 内联 J
-
用Python编写简单的定时器的方法
下面介绍以threading模块来实现定时器的方法. 首先介绍一个最简单实现: import threading def say_sth(str): print str t = threading.Timer(2.0, say_sth,[str]) t.start() if __name__ == '__main__': timer = threading.Timer(2.0,say_sth,['i am here too.']) timer.start() 不清楚在某些特殊应用场景下有什么缺陷
-
Go语言Echo服务器的方法
本文实例讲述了Go语言Echo服务器的方法.分享给大家供大家参考.具体如下: 复制代码 代码如下: package main import ( "net" "io" ) func main() { serv, e := net.Listen("tcp", ":12345") if e != nil { panic(e) } defer serv.Close()
随机推荐
- node.js的exports、module.exports与ES6的export、export default深入详解
- js图片预加载示例
- Linux的wget命令详解
- Sample script that deletes a SQL Server database
- 详解iOS App中UITableView的创建与内容刷新
- asp.net网络数据库开发实例精解 源文件
- .net泛型通用函数的特殊问题的解决方法
- 浅析C#中静态方法和非静态方法的区别
- 接口对象的实例化在接口回调中的使用方法
- 不用数据库的多用户文件自由上传投票系统(1)
- js客户端快捷键管理类的较完整实现和应用
- CommunityServer又称CS论坛的相关学习资料
- PHP扩展迁移为PHP7扩展兼容性问题记录
- PHP生成自适应大小的缩略图类及使用方法分享
- php生成验证码,缩略图及水印图的类分享
- Android安卓中循环录像并检测内存卡容量
- C++ 关于STL中sort()对struct排序的方法
- 吃水果巧妙搭配
- Python实现PS滤镜中马赛克效果示例
- Android 全局Dialog的简单实现方法