Usernames have become quite obsolete. None of the services I use need a username. The only scenario when it comes in handy is when users need to have an option to be anonymous.
So an enable/disable option for username, or a “use email as username” would be handy!
The cron deamon uses do_action_ref_array does not invoke a function, but a hook! So if you want your function to be called you can either add an action with the same name:
add_action( 'my_function_name', 'my_function_name' );
or create a new action:
add_action( 'my_cron_hook', 'my_function_name' );