Examples for calling drush commands as subcommands when needing to split activity into a separate process for memory or other constraint reasons
drush_backend_invoke('command_to_run', drush_redispatch_get_options());
Options can also be adjusted if the subcommand needs to run with different options than the current command
$options = drush_redispatch_get_options();
$options[] = 'add_an_argument';
drush_backend_invoke('command_to_run', $options);