The example I gave already runs forever. No need for select. As for daemonization, I have had good luck with github.com/jpillora/overseer .
On Friday, February 24, 2017 at 1:22:36 AM UTC+1, Keith Brown wrote: > > Thank You all for the great examples! > > I added a select {} at the end so the program will run forever. I am > trying to have it as a deamon. > > > > On Thursday, February 23, 2017 at 6:37:12 AM UTC-5, Nathan Kerr wrote: >> >> NewTicker function example >> >> The task of running functions on a periodic basis can be split into two >> parts: timing and execution. >> >> A ticker solves the timing problem by providing a channel that get new >> input every period. Keeping the timing separate mitigates the impact of >> execution on the timing period (e.g., it won’t be execution time + sleep >> time) >> >> Execution can be solved by ranging over the ticker channel. The contents >> of the loop will be run for each input received from the ticker channel. If >> the loop executes in less than one period, the loop will execute every >> period. >> >> Since tickers use channels, the execution loop can be run anywhere, >> though they are frequently used in goroutines because the program is also >> doing something else. >> >> I would simplify Rodolfo’s examples to: >> >> package main >> >> import ( >> "fmt" >> "time" >> ) >> >> func square(x int) int { >> return x * x >> } >> >> func cube(x int) int { >> return x * x * x >> } >> >> func main() { >> ticker := time.NewTicker(5 * time.Second) >> >> for range ticker.C { >> fmt.Println(square(10)) >> fmt.Println(cube(10)) >> } >> } >> >> This will run square and cube every 5 seconds while the program is >> executing. >> >> On Thursday, February 23, 2017 at 2:39:12 AM UTC+1, Keith Brown wrote: >>> >>> Oddly, I can't find a single example on the world wide web for what I am >>> trying to do. >>> >>> I have 2 functions which I want to run on a periodic basis. The >>> functions are square and cube. >>> Here is my code so far. https://play.golang.org/p/akMxcg2Sra >>> But, I am not sure how to schedule these functions. I looked here, >>> https://gobyexample.com/tickers, but really isn't that helpful or >>> intuitive. >>> >>> >>> >>> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.