Xojo Lite and threading

I had an expired Xojo Desktop license nearly a year ago, as the price was not friendly for a hobby programmer who only makes stuff for fun. I switched to Microsoft Visual Studio C# and have started to love this platform very much. For a nonprofit hobby programmer like myself, Xojo Lite might be the path for me, but it lacks threading. I know the license policy has been discussed a lot, so please no flaming please.

I’m just wondering if there are any future plans for this feature in the Lite version. I would consider a Lite license if threading is included in a future version. Threading is really a basic feature that is mandatory these days with massive multi-core CPUs. The free version of Visual Studio has this feature, so from a business point of view, it would attract hobby programmers like me to beef up the Lite version with threading and other features too. It’s better with $99 than nothing, right?

Please no flaming with buy the Desktop license you cheap ■■■, etc. Please respect that I’m just a hobby programmer writing stuff for fun. This is just a “feature request”. :smiley:

1 Like

Initially I found this post confusing, as you can do threading with Xojo whether you have a licence or not. Then I realised that what was being referred to, was Workers.

Yes, it’s Workers I’m talking about.

Xojo does not comment on future plans besides what they publish on their Roadmap.
The changes to Lite license were a surprise (it was not commented as a possibility by Xojo).

All Xojo versions contains what Xojo call Threads. But in reality all them are Fibers, it is, one real thread only serving multiple contexts in different time-slices. What Xojo offers in some options are Workers, that are separated apps (getting another thread and memory space) running in parallel with the main app, and having limited intercommunication (events) with it. Workers are not threads, and Xojo seems not inclined to adopt real threads at any near time because it would affect their entire framework.

I’m sorry for my confusing question. I’ve been away from Xojo for a year and have been more focused on C#. I’m referring to multicore programming, and Workers are the way to go in Xojo. Therefore, having Workers in the Lite version is my wish.

Just curious, what application are you making that needs threading? Is it scientific or game related?

I’ve never needed threads besides practicing using threads but I program real boring stuff :laughing:

Workers are basically console apps with a bit glue so you aren’t really missing anything.

2 Likes

If you’ve switched to Microsoft Visual Studio, I’m going to assume you’d want to use Xojo on Windows?

If so, and you have experience with C#, you can build your own Xojo “Workers” - because, as I understand it, Xojo Workers are just Console applications that you launch from your Xojo code.

The Lite license does allow calling external Console apps (or command line executables) using the Shell class. Prior to the Worker feature of Xojo, these were called “helper apps”.

So, use Xojo Lite to build your GUI app, and when you want to make use of multi-core, create a Console app in C#. This way you utilize both of your programming skills into one project.

The only limitations that I see, is that Xojo wouldn’t be able to debug your C# Console app, and the computer running your Xojo+C# app would need .NET installed.

Checkout this link Creating helper apps

I have been using threads in many of my projects. In games, I have implemented Chess where each move is evaluated as a thread, greatly improving performance. Currently, I am working on a compression algorithm that can be decompressed on an 8-bit computer (C64). Since Huffman coding is difficult on a limited 8-bit computer, I am instead evaluating different offset and length-bit lengths. Different variations are evaluated as threads. This are C# projects, but I did like Xojo so thats why I’m wishing. :smiley: Many other projects also utilize multi-threading, so it’s not only for pro’s. I am just doing these projects for fun, and nothing that I publish. So I’m nonprofit hobby programmer.

1 Like

i remember Workers using a string or json input. somehow encapsulated from main project.

Thanks for the clarification. Not so useful for more fine-grained thread programming.

1 Like

Unfortunately, no. We asked for real concurrency but got workers which are of limited use.

1 Like

That’s cool! I did some compression programming in C# for a hackathon in college, never got to the point where I was optimizing it though and haven’t really used it since. I make open source stuff with Xojo in the hopes of getting donations someday :sweat_smile:. So I know how much paying sucks when you have no real plans to make sustainable profits.

I just bit the bullet during a 40% sale and went Pro, but it was more for having all the project types and not workers/threads. Especially Android at the time was about to come out.