shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Tarefas simultâneas no shell script


From: Édnei Rodrigues
Subject: Re: [shell-script] Tarefas simultâneas no shell script
Date: Wed, 6 Aug 2008 09:45:44 -0400

Sim, estou ciente dos perigos dos processos concorrentes ( fiz uma
cadeira disso). No entanto, meus conhecimentos em shell script são
limitados para tal uso, por isso estou recorrendo ^^....se fosse pelo
menos C....

2008/8/6 Tiago Barcellos Peczenyj <address@hidden>:
> Se vc tem a necessidade de levantar varios processos e verifica-los
> constantemente é o caso de criar um script "cão de guarda".
>
> Alguem que, de tempos em tempos, verifica se todos os PIDs ainda estão
> rodando e toma alguma atitude quando alguem termina (no mínimo fazer
> logging do que esta acontecendo).
>
> Tome cuidado com um script desses pois é facil criar situações com
> processos defuncts ou criar dead-locks, porém pode valer a pena :)
>
> 2008/8/6 Édnei Rodrigues <address@hidden>:
>> Obrigado a todos, isso já vai ajudar a desenvolver alguma estrutura
>> concorrente!
>>
>> 2008/8/6 MrBiTS <address@hidden>:
>>
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> | Vc pode colocar um processo em background enquanto executa outro
>>> | processo, mas ai o Sistema operacional vai tratar da 'simultaneidade'
>>> | dos processos, uma vez que isso depende de recursos da maquina, etc.
>>> | Posso estar errado, mas para garantir simultaneidade vc teria que
>>> | estar em um Sistema operacional de tempo real.
>>>
>>> Para garantir simultaneidade, teria que ser um sistema em tempo real,
>>> sim. Embora um Linux "normal" vá alocar um processo por processador,
>>> esse processo irá variar devido à I/O, cargas de memória, por exemplo.
>>>
>>> Eu gosto de fazer assim:
>>>
>>> processo1 &
>>> PID_P1=$! # $! traz o PID do comando
>>> processo 2 &
>>> PID_P2=$!
>>>
>>> Quando queremos executar uma ação se e somente se o processo2 terminar.
>>> fazemos
>>>
>>> wait ${PID_P2}
>>> facaalgo()
>>>
>>> - --
>>>
>>> Um abraço
>>>
>>> .0. MrBiTs - address@hidden
>>> ..0 GnuPG -
>>>
>>>
>>> http://keys.cardboard.net:11371/pks/lookup?op=get&search=0xAC37715A6DD1F186
>>> 000 http://www.mrbits.com.br
>>>
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v1.4.9 (Cygwin)
>>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>>>
>>> iEYEARECAAYFAkiZpKsACgkQrDdxWm3R8Yb4OQCeK3yl4udKmKakhEef8gzwtKw1
>>> xjQAnA78T7Bcunyeqe9R73B4b8KwHJia
>>> =z2pC
>>> -----END PGP SIGNATURE-----
>>>
>>
>
> --
> Tiago B Peczenyj
> Linux User #405772
>
> http://peczenyj.blogspot.com/
> "what does not kill us makes us stronger"
> 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]