Optimize recursion handling in Lock::Async
Optimize recursion handling in Lock::Async

No semantic changes, this just rewrites a hot path in a more optimal
way, without too much cost to its overall clarity.

tbrowder/rakudo,lucasbuchala/rakudo,tbrowder/rakudo,tony-o/rakudo,jonathanstowe/rakudo,raydiak/rakudo,raydiak/rakudo,salortiz/rakudo,MasterDuke17/rakudo,Gnouc/rakudo,usev6/rakudo,Gnouc/rakudo,lucasbuchala/rakudo,awwaiid/rakudo,rakudo/rakudo,rakudo/rakudo,jonathanstowe/rakudo,usev6/rakudo,usev6/rakudo,softmoth/rakudo,jonathanstowe/rakudo,Gnouc/rakudo,salortiz/rakudo,raydiak/rakudo,softmoth/rakudo,jonathanstowe/rakudo,labster/rakudo,rakudo/rakudo,labster/rakudo,softmoth/rakudo,salortiz/rakudo,tony-o/rakudo,awwaiid/rakudo,labster/rakudo,softmoth/rakudo,tony-o/rakudo,tbrowder/rakudo,MasterDuke17/rakudo,MasterDuke17/rakudo,rakudo/rakudo,rakudo/rakudo,softmoth/rakudo,tbrowder/rakudo,labster/rakudo,awwaiid/rakudo,awwaiid/rakudo,lucasbuchala/rakudo,nbrown/rakudo,nbrown/rakudo,salortiz/rakudo,Gnouc/rakudo,rakudo/rakudo,tony-o/rakudo,labster/rakudo,tbrowder/rakudo,lucasbuchala/rakudo,lucasbuchala/rakudo,Gnouc/rakudo,tbrowder/rakudo,tony-o/rakudo,MasterDuke17/rakudo,salortiz/rakudo,usev6/rakudo,nbrown/rakudo,salortiz/rakudo,awwaiid/rakudo,nbrown/rakudo,usev6/rakudo,nbrown/rakudo,raydiak/rakudo,MasterDuke17/rakudo,MasterDuke17/rakudo,nbrown/rakudo,jonathanstowe/rakudo,tony-o/rakudo,Gnouc/rakudo,labster/rakudo