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

Re: limitar forks



Não sei se tem como limitar o número de processos, mas você pode limitar o
número de processos gerados pelo seu programa... Deste jeito os processos
estão sendo gerados em uma quantidade exponencial (1 no primeiro passo, 2 no
segundo passo, 4, 8,...) , e todos ficam ativos e executando. É lógico que
uma hora sua máquina vai parar (aparentemente). Ou por falta de memória ou
pela quantidade de processos sendo escalonados.
  Não entendi qual o objetivo do seu programa, mas se for para testar o
fork() tente criar uns 10 processos...

int main(){
    int i=10;
    while(i){
        if ( ( i = fork() ) == -1 ){ exit(1); };  //Testa se o fork() foi
bem sucedido
        if (!i){                                        //Se i == 0
(processo filho) sai do loop
            break;
        };
        i--;
    };
    sleep(2);                                        //Para 2 segundos para
você "ver" os processos
    exit(0);
};

----- Original Message -----
From: "Alex Gripp" <sl4ck@engenharia.uff.br>
To: <debian-user-portuguese@lists.debian.org>
Sent: Friday, June 29, 2001 11:14 PM
Subject: limitar forks


> Ae manos, gostaria de saber alguma forma de limitar os processos por users
especificamente em GNU/Linux
> Pq sempre ao executar o c0de abaixo o c0de vai dexando a maquina lenta ate
travar por completo!
> #include <stdio.h>
> main(){
> while(1){
> fork();
> }
> }




Reply to: