The Concurrency level in a job doesn;t work as expect

i have selected 50 hosts to run a remote job using Ansible playbook,and set Concurrency level to 20. In the job overview page, i can see the first 20 hosts in running status, and last 30 hosts in planned state. But when I clicked on a planned job, the playbook on this host is actually running.

Expected outcome:
Planned hosts should halt any task until there is available concurrency opening.

Foreman and Proxy versions:
foreman and proxy version 1.22