Solved: A mers cu exit(...), insa nu inteleg care e problema lui break.
Mersi Cristian!
________________________________
From: [email protected] [[email protected]] on behalf of 
Cristian Condurache [[email protected]]
Sent: Saturday, April 07, 2012 7:44 PM
To: Sisteme de Operare
Subject: Re: [so] [TEMA2][WIN] Problema Exit

Salut,

Am avut si eu o problema asemanatoare, tot intr-un while, un 
if(strcmp(command.name<http://command.name>,EXIT_STR)==0) break; si nu mi se 
oprea.

Solutia a fost pana la urma sa dau exit() in loc de break, nu stiu de ce facea 
chestia asta.


Cristian



În data de 7 aprilie 2012, 19:34, Razvan Crainea 
<[email protected]<mailto:[email protected]>> a scris:
2012/4/7 Adrian-Gabriel MICLE 
<[email protected]<mailto:[email protected]>>:
> Salut!
>
> Am o mica problema. Gateway-ul meu citeste intr-un ciclu while comenzi din 
> mailslot-ul in care scriu clientii. Totul merge fain frumos pana cand se 
> primeste comanda exit. Pentru tratarea acesteia folosesc urmatoarea secventa:
>
> if (strncmp(cmd.name<http://cmd.name>, "exit", 4) == 0) {
>        /*
>         * foreach server:
>         *      send exit;
>         */
>        break;
> }
>
> In urma iesirii din while se fac operatiile de cleanup si apoi return. Insa, 
> programele, in loc sa se opreasca, se repornesc. Trebuie sa dau "exit" de 
> vreo 6 ori ca sa-mi iasa efectiv.
>
> Intuieste cineva care ar putea fi problema?
>

Salut, Gabriel!

În ce sens se repornesc, se execută din nou programul? Ești sigur ca
if-ul respectiv nu este în două bucle:

while (cond1) {
   ...
   while (cond2) {
       ...
      if (...){
      }
   }
}


--
Răzvan Crainea
_______________________________________________
http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii
_______________________________________________
http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii

Raspunde prin e-mail lui