Changes between Version 4 and Version 5 of SoftWare/SignalCheckpoint/OAR
- Timestamp:
- Oct 15, 2012, 11:44:31 AM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SoftWare/SignalCheckpoint/OAR
v4 v5 133 133 }}} 134 134 135 La boucle whileest très importante136 car le code peu xfinir suite à la réception d'un signal135 La boucle '''{{{while}}}''' est très importante 136 car le code peut finir suite à la réception d'un signal 137 137 mais aussi naturellement lorsqu'il a enfin finit son traitement global. 138 Les deux cas doivent être géré .138 Les deux cas doivent être gérés. 139 139 Or la commande interne '''{{{wait}}}''' attends la '''fin du calcul''' 140 140 ou la '''réception d'un signal'''. 141 141 142 Une fois le signal reçu, la commande {{{trap}}}retransmet le signal au code,142 Une fois le signal reçu, la commande '''{{{trap}}}''' retransmet le signal au code, 143 143 et le script de soumission repars dans la boucle {{{while}}} 144 144 afin d'attendre la fin réelle du code. … … 147 147 et se terminerait en laissant {{{OAR}}} tuer sauvagement le code dans sa phase terminale... 148 148 149 Ce script utilise trois commandes internes du shell peu usité : {{{wait}}}, {{{trap}}} et {{{jobs}}}.149 Ce script utilise trois commandes internes du shell peu usitées : {{{wait}}}, {{{trap}}} et {{{jobs}}}. 150 150 Le premier paramètre de {{{trap}}} est du code shell à exécuter lors de la réception du signal sur lequel on se connecte. 151 151 Si l'on veut que ce code shell soit effectivement interprété lors de la réception du signal et non avant, 152 152 il est '''très''' important de la placer entres des '''apostrophes''' (quote)... 153 La commande interne {{{jobs}}}permet enfin de récupérer l'ensemble des PID des processus fils,154 donc ici le code de calcul.153 La commande interne '''{{{jobs}}}''' permet enfin de récupérer l'ensemble des PID des processus fils, 154 donc ici le PID du code de calcul. 155 155 156 156 On le voit, le cas asynchrone oblige à tout gérer dans son script shell.