Process (gb)

Esta clase se emplea para gestionar procesos ejecutados con las instrucciones EXEC o SHELL.

Al ser la clase un Flujo, puede usar las instrucciones de entrada y salida para leer la salida estándar del proceso o escribir en su salida estándar.

Para leer la salida estándar de errores, debe usar el evento Error.

Esta clase hereda Stream.

Esta clase no es instanciable.

Constantes
Crashed   Constante empleada por la propiedad State que denota que un proceso finalizó con una excepción grave.
Running   Constante empleada por la propiedad State y que denota que un proceso está en ejecución.
Signaled  
Stopped   Constante utilizada por la propiedad State, que denota que un proceso está detenido.

Propiedades estáticas
LastState  
LastValue  

Propiedades
Handle   Devuelve el identificador de sistema del proceso (pid) gestionado por el objeto Process.
Id   Es un sinónimo de Handle.
Ignore  
State   Devuelve el estado actual del objeto que representa al proceso:
Value   Devuelve el valor devuelto a su vez por el proceso al finalizar, o el número de la señal emitida si finalizó con una excepción grave.

Inherited properties
Blocking  
ByteOrder   Devuelve o cambia el orden de bytes que se emplea para leer o escribir datos binarios en el Flujo.
EndOfFile  
EndOfLine  
Eof  
IsTerm  
Lines  
NoShare  
NullTerminatedString  
Tag  
Term  

Métodos
CloseInput   Cierra el flujo de entrada del proceso
Kill   Mata el proceso inmediatamente.
Signal   Envía una señal al proceso.
Wait  

Inherited methods
Begin  
Close  
Drop  
ReadLine  
Send  
Watch  

Eventos
Error   Se dispara cuando hay datos pendientes de ser leídos de la salida estándar de errores del proceso.
Kill   Se dispara cuando el proceso finaliza, de forma normal o anormal.
Read   Se dispara cuando hay datos pendientes de ser leídos procedentes de la salida estándar del proceso.

Si necesita enviar CTRL+D a un proceso ejecutandose, si tiene que ejecutarse en un shell, es suficiente con cerrar el flujo.

Este comportamiento esta en deshuso desde Gambas 3.9. Ahora cerrar un flujo de un proceso lo vuelve inusable, se debe emplear el CloseInput.