The worker is an entirely separate running process and one process cant reach inside another
IF that is a need you might need to look into using shared memory which can be enabled using MBS plugins
That is a well defined API for two processes to agree on how to share one chunk of memory
Sounds a bit clunky but I’ll look into it.
For use in situations needing high performance, IMO they should have added an X-Platform API to use shared memory for transferring data between worker and main app …
That would have been useful for full blown console apps as well as this worker implementation for multiprocessing
In any case they did add other things that I wanted for many years, but they should have added most of them a decade ago.
Well, the few people who need that, can use our plugin (or maybe one from Björn).
The API exists
Christain has wrapped the unix low level calls into a plugin
That can either use the classic shmget and associated API’s or the newer mmap which also permits shared memory between a process & its child processes
theres a reasonable discussion on stackoverflow but it IS all in C
I literally gave them my source to using shared memory on macOS (that’s App Sandbox safe), to help them implement it sooner, when we first found out about workers (like Q1 2020).
I keep telling Xojo, I want to help…
Don‘t worry, it‘s mostly in English. Just a little bit of C.
I booted on 10.13.6 an hour (or so) ago and fired 2020r2:
a. a wfs declare was reported. No, in fact, I get a cryptic report:
“Right Click in this error message to copy it and report”
where a User32 is missing (or so). I closed all faster than the speed of light and reboot on El Captan.
In 2015r1, a simple search gaves me the answer (I used WFS to get the verson of the running Windows).
I also noticed that my project is still set to compile for 32 bits by default.
And also, Picture.FormatPNG (read Picture.IsImportFormatSupported) have changed to Picture.Formats.PNG (not a single example in the actual docs…
At last, MacType and MacCreator are deprecated, then reported, the one from
Dim txtType As New FileType
are not reported (or I forgot).
Beside that, my project is OK…
Doh… I nearly forgot: all three platforms are set to be compiled to 32 Bits (try with an old, no an older than this one, project).
The DMG is nearly 1GB, the application have the rounded BS icon…
Of course, even if that IDE version is very nice, I do not saw anything appealing. (this is not a pun).
As a general rule, those are obviously good arguments, but we are accustomed to that.
Was there something you hoped would be fixed this time and it wasn’t?
For workers, if Xojo handles most possible cases (e.g. watching when either process dies, what to do in a timeout case, etc.), the whole logic is handled directly from the framework, so someone wanting this functionality doesn’t have to miss edge cases when making his/her custom implementation.
On the other hand, it also has its bad sides (like, as you said, the scope of available items between debug and released versions being different; but this one may come false in the future, like telling the compiler to not see items out of workers, even when they are just threads in debug mode). Workers are brand new, so they will certainly become more featured.
You got one release that doesn’t fit the fixes you wanted/needed (like the previous one was for me).
My feeling is Xojo is doing better for the last release than for the previous one. I’m still hoping the progress will rise, because it can, of course.
Agreed. The MBS plugin has ways to do that, but it’s neither native nor “Xojo-like”. But they may still add it later; workers are brand new.
Better late than never, as one said…
I understand and share your feeling here; but I eventually got accustomed to that and take what comes. Awaiting for something is the best way to end up being frustrated.
I wish Xojo would just add a ShareToAnyProcess(MyObject) method
You’re not alone who would like to help making Xojo better. Are they frightened of outside’s help and opinions (losing control?) or they just want all the merit (making their product as they want. Period.)?
I’d prefer Xojo code with Chinese explanations…
several XojoScript bugs
2019r2, 2.1, 3, 3.1 2020r1 and 2020r2
5 or 6 in a row
Xojo isnt set up in a way that outside help CAN do much TO help
You’d literally need the entire code base for the product to help even a little and I doubt they’d do that
I think they did let someone “help” many years ago (pre your working there). IIRC it was Thomas Templeton.
My understanding of that was Thomas hired not volunteering
I could be wrong though as that ended about the time I started
Not sure why
He is obviously very bright, but can be abrasive at times… he’s german isn’t he?
I think I remember him posting on the NUG (or was it the beta mailing list?) saying things that implied he had volunteered.
But it was long ago and I could be mistaken. I am pretty sure he never used a REAL email address on the lists.
BTW I had a copy of his Module-2 compiler for the Atari ST back in the day long before I started with RB.
Germans aren’t abrasive. We are just German.
And bundles of fun too!
lots and lots of beer !
exactly same here lol… pro licence expired today…
Be quick and grab the update for 20% off, so you can play soon with 2020r2 betas.
mmmm, I am now off the Xojo waggon, not wasting any more money on it until its sorted out a whole heap of stuff.
playing with betas, although interesting, is not what I want from a product such as this.
I am not sure I will even bother to come back in a year to see what’s going on, there will be other shiny stuff to be interested before then!