Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Timer event

  • To: mathgroup at smc.vnet.net
  • Subject: [mg104207] Re: [mg104205] Timer event
  • From: Leonid Shifrin <lshifr at gmail.com>
  • Date: Sat, 24 Oct 2009 02:36:29 -0400 (EDT)
  • References: <200910230236.WAA27918@smc.vnet.net>

One possibility is to use Dynamic with an UpdateInterval option. This is a
slightly modified example from Mathematica help:

This models a function you want to execute (it produces a side effect - new
definitions at runtime - so that you can see whether or not it was called)

Clear[f];
f[x_] := f[x] = x^2;

Now set the desired time in a line like this:

Dynamic[Refresh[(a =
     DateString[{"Hour", ":", "Minute", ":", "Second"}];
    If[a === "21:41:05", f /@ Range[10];
     Print["Now printing the message"]]);, UpdateInterval -> 1]]

At a given time, you will see the message printed (in the Messages window),
and if you inspect the definitions of <f> you will see that it did execute:

?f
Global`f
f[1]=1

f[2]=4

f[3]=9

f[4]=16

f[5]=25

f[x_]:=f[x]=x^2


Of course, you may use any function you want in place of <f> - this is just
an example. The problem is however that you will need this Dynamic statement
to be on the active part of your notebook - otherwise it won't trigger due
to the optimization employed in Dynamic. I don't know if it's possible to
turn this optimization off. Perhaps there are  other workarounds or
solutions  involving Dynamic.

Regards,
Leonid


On Fri, Oct 23, 2009 at 6:36 AM, Garapata <warsaw95826 at mypacks.net> wrote:

> An post in 2005/2006 asked about creating a timer or perhaps more
> accurately a timer event in Mathematica.  The responses recommend
> using JLink and an AddPerioical routine described in the JLink
> documentation in version 5.2.
>
> I'd like to create a timer event or perhaps a number of such timer
> events such that Mathematica would run some function or take some
> action at a specified time.
>
> Can one do this any more directly in Mathematca, without using JLink?
>
> Thanks
>
>



  • References:
  • Prev by Date: About using hyperlinks in notebook, couple of questions
  • Next by Date: Re: JLink broken on Snow Leopard
  • Previous by thread: Timer event
  • Next by thread: Re: Timer event