#! perl -slw use strict; use threads; sub take { print "Original take\n"; }; sub setup { *take= sub { print "Fresh take\n" }; sleep 10; }; async \&setup; sleep 1; take(); sleep 12;