Helper app

I would like to understand what is an helper app and how to use it in Xojo. Could someone quickly explain it and/or suggest to me an example project?

Thanks in advance
Pietro

As simple as possible:

Let’s say you have a lot of work, and you get an extra big task from a client that is very urgent-> your ‘normal’ work will not progress as long as you’re working on the big task.

Solution: You hire an employee that only does those big tasks, so you can do your ‘normal’ work.
If your employee is busy doing a big task and another big task comes in, you just hire another employee.

You = your app
Employee = a helper app

A helper app is an application that does 1 job (e.g. Encrypt a large file, big math calculations) and returns a result.
Your normal app can do it’s job, and will show the result of the helper app to your user when it’s finished.

Thank you Mathias, I had imagined it could be something like this.
I actually use this approach using threads or external app launched through shell.

Now, I need to understand how to do use an helper app with Xojo. Any example or documentation?

They have a video by @Paul Lefebvre on the Xojo YouTube Channel
https://www.youtube.com/watch?v=lJMsI6yXS_c

[quote]
Xojo
Gepubliceerd op 14 dec. 2016
Learn how to use Console apps to use with command prompts/Terminal, for background processes/services and as helper apps for multi-processing.
Categorie
Wetenschap en technologie
Licentie
Standaard YouTube-licentie[/quote]

The example project “IPCSocket” in the “Communication” folder is an easy to understand demo. There are a few posts on this forum about some finickiness regarding temporary IPC comm file paths, but it’s all pretty straightforward.

Thanks to Dirk and Julia for your contributions.
I’ll take a look to the video and the “IPCSocket” example…

Thanks again to everybody.

Pietro, this is a helper for standalone web app ,
so, in few words, the main app serve only row data and the helper app all media (i.e. images, javascript library etc.).
From Matthew Combatti

[quote=368543:@luciano monti]Pietro, this is a helper for standalone web app ,
so, in few words, the main app serve only row data and the helper app all media (i.e. images, javascript library etc.).
From Matthew Combatti[/quote]

Thank you also to Mr. Mountains for the link.

Mr Mountains???

It’s a funny joke, because my first language as the Luciano Monti’s first language is the italian; me and Mr. Luciano Monti are friends.
If you translate “Monti” from italian to english you get “Mountains”.

All the threads in a xojo app run in the same core. So, in the example by Mathias Maes, if you use threads, it is ONLY YOU pausing your normal job to do a part of the extra job, then pausing that to continue your main job, then back an forth until the extra job is done.

That is why a helper app is relevant in xojo, it can run in a diferent core, so, both app can ejecute code at the same time.

I can confirm that using a helper application is the only Xojo sanctioned means of multi-core/multi-processor processing with the Xojo language. It works basically :slight_smile: