Multitasking can only be done with a background queue processor, either with mutiple queue workers, or with a queue worker processing spawned tasks asynchronously. Any other solution will only run them sequentially.
If that is sufficient, tasks are just classes, so you can create a superclass: