RX0342

Dominio: Ejecución

Mensaje de error

process.spawn[argv: …] rechazó %s: %s

En el mensaje, %s marca un valor que el motor completa cuando lanza el error.

La historia

Quisiste iniciar un proceso del sistema con process.spawn y argv, y el motor rechazó cómo lo escribiste. Repasemos la regla. El argv es una lista de textos: el primero es el programa, y los siguientes son sus argumentos. Se ejecuta tal cual, con execvp, sin expandir comodines ni variables. Por eso hay tres cosas que no valen: un mapa en lugar de una lista, una lista vacía sin programa, o combinar argv con where, restart o budget. Esas últimas palabras describen la residencia de un hilo del motor, y un proceso del sistema operativo no tiene nada de eso. Un ejemplo: argv igual a una lista vacía. No hay programa que arrancar. Otro: argv junto con restart. Lo segundo no aplica a un proceso del sistema. La solución es una lista de textos con el programa primero, y quitar las palabras que no corresponden. El mensaje nombra lo que escribiste y lo que es legal.

Texto del catálogo de errores del motor de Rush.