summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ticker.go53
1 files changed, 53 insertions, 0 deletions
diff --git a/ticker.go b/ticker.go
new file mode 100644
index 0000000..6919207
--- /dev/null
+++ b/ticker.go
@@ -0,0 +1,53 @@
+package gui
+
+import (
+ "time"
+
+ "go.wit.com/log"
+)
+
+var watchtime time.Duration = 100 // in tenths of seconds
+
+/*
+ This program sits here.
+ If you exit here, the whole thing will os.Exit()
+ TODO: use Ticker
+
+ This goroutine can be used like a watchdog timer
+*/
+func Watchdog() {
+ var i = 1
+ for {
+ log.Verbose("gui.Watchdog() is alive. give me something to do.", i)
+ i += 1
+ time.Sleep(watchtime * time.Second / 10)
+ }
+}
+// https://www.reddit.com/r/golang/comments/12em87q/how_to_run_periodic_tasks/
+/*
+package main
+
+import (
+ "fmt"
+ "time"
+)
+
+func main() {
+ ticker := time.NewTicker(time.Second)
+ defer ticker.Stop()
+ done := make(chan bool)
+ go func() {
+ time.Sleep(10 * time.Second)
+ done <- true
+ }()
+ for {
+ select {
+ case <-done:
+ fmt.Println("Done!")
+ return
+ case t := <-ticker.C:
+ fmt.Println("Current time: ", t)
+ }
+ }
+}
+*/