Sorry, my memory is a bit fuzzy on T::A, but iirc the current version didn't play well outside of an explicitly created object, so main:: might not be runnable in an apartment. I vaguely recall trying to hack something together to do that for an apartment threaded Tk.
in reply to Thread::Apartment, how do I use main:: subs?
My own use of T::A has always been to use main:: as a just a launcher, and any actual processing was wrapped in objects which could be mapped to apartments.
Sorry I can't shed more light; I used T::A for a major project a couple years ago, but haven't had a reason to touch it in awhile.
Perl Contrarian & SQL fanboy