Ansible_runner in async activity of a workflow's multiple executions is not running in parallel

I have a workflow that runs multiple ansible playbooks using ansible_runner python package.
ansible_runner executes cmd commands. when I execute two instances of the same workflow, when it comes to executing the first activity (there is a series of sequential activities that each execute an ansible playbook), workflow executions block each other and do not get executed in parallel.
It’s like there can be only one ansible_runner executing at one point in time, on a single thread. so I have to execute them on different threads to have my workflow executions in parallel.
When using async activities, the activities get executed on the same thread.
I am considering using Synchronous Multithreaded Activities. but then I will lose the benefits of using async activities!
Am I missing something? do you have any recommendations? How can I get what I want without changing my activity type into synchronous multithreaded?

The activities aren’t asynchronous anyways if you’re making blocking calls in them. You should never make a blocking call in an async def function. It will cause problems for the entire system.

If you don’t/can’t make your calls asyncio-capable (e.g. using async subprocesses), you can either use synchronous multithreaded activities, or you can invoke your blocking calls with run_in_executor. See the Python documentation.