Cómo ejecutar el comando Symfony2 personalizado en segundo plano

Symfony2 permite a los desarrolladores crear sus propios comandos de línea de comandos. Se pueden ejecutar desde la línea de comandos, pero también desde el controlador. Según la documentación oficial de Symfony2, se puede hacer así:

protected function execute(InputInterface $input, OutputInterface $output)
{
    $command = $this->getApplication()->find('demo:greet');

    $arguments = array(
        ...
    );

    $input = new ArrayInput($arguments);
    $returnCode = $command->run($input, $output);

}

Pero en esta situación, esperamos que el comando termine su ejecución y devuelva el código de retorno.

Cómo puedo,desde el controlador¿Ejecutar el comando bifurcándolo al fondo sin esperar a que finalice la ejecución?

En otras palabras, lo que sería equivalente de

$ nohup php app/console demo:greet &

Respuestas a la pregunta(2)

Su respuesta a la pregunta