yeah, the name of the extension for executing in a second image is forkit.
instead of [ 2+2 ] shootIt, do [ 2+2 ]forkIt,
The difference in between both is the runner.

Meanwhile shootIt is like this:
shootIt

    ^ TKTOneShotRunner new run: self


forkIt is
forkIt

    ^ FKTOneShotAtThirdInstanceRunner new run: self


We are changing this for the next version, but it will be similar, but more
dynamic (we will take more advantage of our reification of process)














2014-06-30 0:05 GMT+02:00 Alexandre Bergel <alexandre.ber...@me.com>:

> Impressive!
>
> Can I specify the semantic behind #shootIt ? I mean, now you are spawning
> processes right? Can I instead open a new image to have the work done?
>
> Alexandre
>
> On Jun 22, 2014, at 6:39 PM, Santiago Bragagnolo <
> santiagobragagn...@gmail.com> wrote:
>
> >
> > Hi all, im glad to announce TaskIT. You may already knew about, after
> all it's not confidential ;) and it has documentation on-going since some
> months ago.
> >
> > Task IT is package that provides a cool way to deal with processes. Even
> when this version is stable, it still in design and we want to make it
> consistent and powerfull.
> >
> > It counts with a chapter in pharo enterprise book and some cool tests.
> >
> > We have moved the main distribution repo to CAR
> >
> > http://smalltalkhub.com/#!/~CAR/TaskIT/
> >
> >
> > The main easy things to do with this revision are:
> >
> > " closures "
> > val := [ 2+2 ] shootIt.
> > val isKindOf: TKTFuture.
> > val onSuccess: [: rslt | rslt == 4 ] "async"
> > val value == 4. " sync "
> >
> > rslt := [ 2+2 ] shootIt asResult.
> > rslt == 4 "sync on demand"
> >
> > " objects "
> >
> > val := 2 paralellize + 2.
> > val == 4 "sync on demand"
> >
> >
> > " staying in tune "
> >
> > val := [ "some task" ] shootIt asStickyReference.
> >
> > val := nil.
> > " sticky means that if this future is taken by the GC, it will kill the
> process"
> >
> >
> >
> > " looping  "
> >
> >
> > val := server paralellize looping serveOnce: anyParameter
> asStickyReference.
> >
> > "this will execute in a new process, in a loop, server serveOnce:
> anyParameter."
> >
> > You can stop it by doing
> > val:= nil.
> >
> > "or using a disgusting magic variable, for that check the samples :).
> But do not rely on that kind of things, because it will not be supported "
> >
> >
> >
> > For more advanced and cool usages, check the Doc.
> >
> >
> > FAQ:
> >
> > 1- Yes, the "sync" on demand is implemented with a proxy and a become.
> > 2- Yes, we are changing the API of the processes that persist in time.
> >
> > CREDITS
> >   All CAR team in general was great inspiration, particularly, Guille
> Polito full operational commiter and  of course is always a good idea to
> discuss with him,  Nick Papoylias, is also great to discuss with him. Luc,
> Noury, Jannik: several ideas are discussed with them as well, and they
> always gave me support.
> >
> > and from RMOD Esteban Lorenzano, also discussing and proposing.
> >
> > Thanks all :).
> >
> >
> >  OTHERS:
> > If you want to go to the darkside (dark because is not documented yet,
> but in the case of PoolIT, that it has some doc ) you can also add to your
> combo:
> > ActIT: a simple Actor extention for taskit.
> > ForkIT: an extention that runs blocks in background image (it adds a
> nice button to the test runner, letting you run all your tests in a
> background image and installing the results after the execution)
> > PoolIT: it adds a pool of workers, it consumes tasks and ensure you a
> limited amount of threads.
> > PlanIT: a basic and not yet full developed algebra for composing
> processes.
> >
> >
> >
> > I encourage you to use it, it is being used in PhaROS since a lot  of
> time. And please any bug and enhancements, you can contact us. Since we are
> working on the next version is a good time to define what features are
> really needed.
> >
> >
> > Salut.
> >
> >
> > Santiago. .
> >
> >
> >
> >
> >
> >
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>

Reply via email to