in reply to Will closure increase performance thread processing subroutine?

If %hash is lexical, then it's already being captured by a closure. Remember,

sub refresher { }
is the same thing as
BEGIN { *refresher = sub { }; }

If it's not a lexical, you're asking if it's faster to use a lexical or a package variable. Seriously?