Check out these three Queue managers from the Marketplace and see for yourself which fits you purpose best:
- https://marketplace.mendix.com/link/component/435, using the perks Java
- https://marketplace.mendix.com/link/component/106628, with a nice demo here
- https://marketplace.mendix.com/link/component/393, the oldest and the only one with the best support-type: ‘platform’
Sounds like what you really want is synchronous execution that happens in a background thread (and possibly in multiple threads).
If the order of execution does not matter you can take a look at Parallel Execute https://marketplace.mendix.com/link/component/116433
I wrote this module exactly for this purpose it is fully synchronous, so you can use standard error handling and result in Mendix.
You can create a generalisation of the Job entity and store a flag there, or associate another entity to it and store a flag there that it has completed.
Outside this job you can use a scheduled event in the background to check for completeness, or a microflow timer (from the app store) on a page to retrieve and check the status. In your case, the microflow timer running every X time period seems the best approach.