PDA

View Full Version : [C + PHP] exec mi blocca apache


Herod2k
04-06-2009, 07:57
Ciao ragazzi,

ho scritto un programma in C che controlla un modem ISDN particolare (il diva server 4BRI) all'interno di un server, questo programma ha dei tempi di esecuzione che va dai 13 ai 40 secondi (connessione, tempi di risposta, ed esecuzione, distaccamento della linea).

php deve lanciare questa applicazione alla pressione di un pulsante, peró il problema è questo: se lancio con exec il programma esterno apache non risponde piú finche il programma in c non finisce di eseguire, quindi se qualcuno spinge il pulsante che chiama l'exec tutti gli altri utenti che sono connessi non possono piú lavorare e questo non va bene.

Qualche idea su come posso risolvere?
Il server è linux, il comando che do è
exec ("sudo llamada param1l param2");
ho anche provato con & per mandarlo in background ma continua a fare la stessa cosa.
exec ("sudo llamada param1 param2 &");

Grazie

H2K

Herod2k
04-06-2009, 08:34
ci sto ancora lavorando su ma credo di aver risolto con
exec ("sudo llamada param1 param2 > /dev/null &");
cosi exec non aspetta e va avanti e nel frattempo il programma llamada lavora.