io ho una form che mi consente di avviare la stampa su una stampante remota che accetta file via ftp soltanto. Di per se la comunicazione ftp è lenta, e in più questa accetta solo un file per volta.

Se, caso raro ma accade ai miei utenti, devono stampare manualmente 30 etichette, il ciclo che si occupa dell'ftp impiega quasi 4 secondi (delay imposto di fabbrica tra una sessione ftp e l'altra) tra un etichetta e l'altra per un totale di 120 secondi. Durante i quali l'utente DEVE fare altro.

Così mi sono detto: io lancio in qualche modo uo script esterno, un thread, o che altro, che si occupi della stampa, e nel frattempo l'utente ha la sua maschera comunque disponibile.

per ora ho risolto creando una tabella di coda di job stampa. Uno sript schedulizzato sul server ogni minuto controlla se ci sono etichette da stampare (o se c'è n'è già in stampa). Se ci sono e non sta stampando nient'altro allora stampa, altrimenti esce e ci si ripensa un minuto dopo.

il caso in cui l'utente deve attendere un minuto non crea problemi perchè la stampante ftp è a quasi mezzo magazzino di distanza....