Sweeeeeeet!!!!! send in 0 seconds and send in -3 seconds open up so many possibilities. The message path now starting to gel. Done a lot of RT programming in the past. This opens up LC to a lot of things I want to do.
THANKS again folks! Keep it coming I'm hungry. Ralph DiMola IT Director Evergreen Information Services [email protected] -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Phil Davis Sent: Wednesday, February 01, 2012 7:33 PM To: How to use LiveCode Subject: Re: How does a command find out who called it? Here's a related tidbit I learned from Dar Scott (and who else would think of it? ;-) If you have several pending messages and you want to send the next one to the front of the pendingMessages, you can: send "doUrgentStuff" to me in -3 seconds You can use a negative time! Phil Davis On 2/1/12 2:59 PM, Pete wrote: > This is fascinating stuff. I always wondered about the logic of sending > something in zero seconds, now I know. > > I hate to complicate things even more but how does dispatch work in this > regard? I've always thought of it as a replacement for send with a nicer > syntax, but it doesn't have an "in time" clause, so..... > > Pete > > On Wed, Feb 1, 2012 at 2:09 PM, Ken Ray<[email protected]> wrote: > >> On Feb 1, 2012, at 3:41 PM, Ken Corey wrote: >> >>> On 01/02/2012 21:28, Ken Ray wrote: >>>> Really? Does it matter how long it takes the handler to complete >> execution? That is, if the rest of the handler after the "send" takes 10 >> seconds to execute, will LC wait all 10 seconds to get to the end of the >> handler before it sends the message? >>>> Just curious... >>> Completely depends on your code and the order in which the handler needs >> information. >> >> Actually I just tested it. as long as the code following the "send in >> time" message doesn't allow for any idle time, and the amount of time that >> you are "sending" in is less than the time for the code to process, it will >> wait until the handler is done before it sends. >> >> The bottom line is that the "send<msg> in<time>" will execute<msg> as >> soon as it gets an idle moment, so long as that idle moment is greater than >> or equal to<time>. >> >> So: >> send "hello" to me in 3 seconds >> >> will start counting down the 3 second timer on the message immediately. >> When the 3 seconds has elapsed, if there is not an idle moment, it will >> wait until there is one. So if you execute this "send" and then have 2 >> seconds of code that occurs after the "send", you'll get the message 3 >> seconds after the "send". But if you have 10 seconds of code that occurs >> after the "send", you'll get the message after all that code finishes (10 >> seconds after the "send"). >> >> This is why "send<msg> to me in 0 secs" will make it appear to execute at >> the end of a handler; so long as there are no statements that will give up >> idle time (like "wait 0 milliseconds with messages"), LC is kept busy until >> the end of the handler, at which point it executes<msg>. But if you *have* >> a "wait 0 milliseconds with messages" (or equivalent) in your code, as soon >> as it hits that, your<msg> will trigger. >> >> Just clarifying this for anyone who cares. >> >> ;D >> >> Ken Ray >> Sons of Thunder Software, Inc. >> Email: [email protected] >> Web Site: http://www.sonsothunder.com/ >> >> _______________________________________________ >> use-livecode mailing list >> [email protected] >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> > -- Phil Davis PDS Labs Professional Software Development http://pdslabs.net _______________________________________________ use-livecode mailing list [email protected] Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list [email protected] Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
