http://www.perlmonks.org?node_id=475546


in reply to Re: Ouch! Each! Reentrant it is not
in thread Ouch! Each! Reentrant it is not

N.B. responsibility for the iterator on a tied hash is divided between the actual HV and the tied object; the HV keeps track of whether the next call should be to FIRSTKEY or NEXTKEY and the tied object keeps track of what to return for NEXTKEY.

Given this, your idea sounds difficult but maybe not impossible.