Re: [ann] taskRunner (was Re: [ANN] "World's first supercomputer tablet")

2011-11-09 Thread Robert Brenstein

On 09.11.2011 at 19:38 Uhr + Alex Tweedly apparently wrote:
taskRunner is, as I'm sure you can guess, named after Ken Ray's 
'stackRunner', but unlike stackRunner it doesn't run "whole" stacks, 
it simply performs little "tasks", and does so on behalf of another 
app rather than for a user directly.




Brilliant!
I wanted to make such a thing for a long time but have never found time...

Robert

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ann] taskRunner (was Re: [ANN] "World's first supercomputer tablet")

2011-11-09 Thread Alex Tweedly

On 09/11/2011 19:38, Alex Tweedly wrote:


This is all at www.tweedly.org/taskRunner


Duh. It can be found at

www.tweedly.org/taskRunner.lc

-- Alex.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


[ann] taskRunner (was Re: [ANN] "World's first supercomputer tablet")

2011-11-09 Thread Alex Tweedly


taskRunner is, as I'm sure you can guess, named after Ken Ray's 
'stackRunner', but unlike stackRunner it doesn't run "whole" stacks, it 
simply performs little "tasks", and does so on behalf of another app 
rather than for a user directly.


I started developing taskRunner about 6 months ago, with the intention 
of getting to a complete, maybe even polished, state before announcing 
it. However, I got it basically working 4 months ago, and haven't had 
any time to work on it since then; I've now decided that it would be 
better to make it available as a "sample" or "demo" quality stack in the 
hope that it will be useful, or at least interesting, for some folks.


This was partly triggered by a couple of recent threads, on socket 
inter-app communication and on the Asus tablet. Now that even tablets 
have multiple cores, and our Livecode apps are leaving 75% of that power 
unused,  it's worth investigating how we can re-factor our apps to allow 
us to make more use of multi-cores or processors.


Many of us have found that our apps have some operations that take a 
long time (long enough that we need to re-write small parts to make them 
more asynchronous). This can be as simple as adding a "wait with 
messages" or "send in time" to the critical loops so that our app can 
remain responsive, and/or be interrupted and/or give progress updates. 
In many cases that same refactoring (taken a little bit further) will 
allow the use of taskRunner to hive off the actual performing of the 
task to a separate process.


Although I haven't worked on taskRunner for months, I do use it every 
week, almost every day, and in some cases it has reduced my waiting time 
to 25% or 30% of what it was before (and made my MacBook into a nice 
warm space-heater :-).


As well as the actual taskRunner stack, you can find
 - a library to make it easy to split out the tasks and communicate 
with taskRunner

 - a test stack to demonstrate some simple uses of taskRunner
 - a few simple 'task stacks' to use in the demo

This is all at www.tweedly.org/taskRunner and I will try to get more 
docs and useful task stacks written up. If you look at it and find it 
useful or interesting, please do let me know if there is anything 
particularly confusing or in need of better explanation.


Thanks
-- Alex.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode