Visualizzazione dei risultati da 1 a 7 su 7

Visualizzazione discussione

  1. #5
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Proprio "obbligo" no. Nel senso che se tu sai che il processo non fa assolutamente output o se di per sé può farne ma l'hai avviato con una qualche sua opzione che lo rende "quiet" (silenzioso) .... allora non è veramente necessario leggere gli stream di Process.


    exec non crea alcun thread! Semplicemente la richiesta al sistema di avviare un nuovo processo è una cosa che richiede frazioni di un secondo .... non secondi o minuti.


    Se il processo fa "abbastanza" output su standard-output e/o standard-error, ripeto che gli stream di Process vanno letti.
    Per sapere se il processo fa dell'output, documentati se ha una documentazione o comunque provalo "a mano" da una console.
    Ah perfetto, allora non è stato inutile utilizzare Process in un nuovo thread perché anche se come tu scrivi, la richiesta al sistema di avviare un nuovo processo è una cosa che richiede istanti, nel mio caso il processo esterno che viene eseguito è un processo pesantissimo che fa delle elaborazioni complicatissime su segnali in arrivo da un radar x-band collegato al pc tramite una scheda proprietaria di acquisizione.
    Capirai quindi che quel exec se viene eseguito nell'edt può realmente creare seri problemi o addirittura blocchi nella gui stessa se qualcosa non dovesse andare correttamente e comunque essendo un processo che non esce, ma resta in uno stato di elaborazione continua, credo che se non viene gestito in un altro thread non può che appesantire l'edt che si rallenterebbe o diventerebbe instabile.
    In poche parole se invoco Runtime.exec senza farlo nel run di un nuovo Thread, per forza di cose quell'oggetto Process viene gestito nell'unico thread dell'edt e questo non credo sia la soluzione corretta considerando che l'eseguibile avviato dall'exec è molto pesante e soprattutto non ritorna mai.
    Ultima modifica di Samaritan; 05-04-2014 a 23:22

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.