Why the 'asyncBefore' do not work

hello guys,
i want to automatically complete the second user task, so i add a executionListener before the second user task, in the listener i use a async method to complete the second user task;
the problem is that when i query the task list, it returns the first one; is the trx did not commit? so i ‘sleep 10s’, it can return the second user task; that
the other question is that i use ‘asyncBefore’, suppose it can commit the trasaction, i did not work either;
it seems ’asyncBefore‘ did not work,do i need additional settings in springBoot,exception job-execution.enabale=true;

the version is:
Spring-Boot: (v2.3.12.RELEASE)
Camunda Platform: (v7.16.0)
Camunda Platform Spring Boot Starter: (v7.16.0)