in reply to Extending & Embedding Perl simultaneously: How to share a scalar between perl callback sub and main body?
Try prefixing you global var with our:
our $cb_done :shared = 0; [download]