[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico]
[Índice de assunto]
Re: RES: MICO e' "reentrant"?
- Subject: Re: RES: MICO e' "reentrant"?
- From: Nelson Posse Lago <PROTECTED>
- Date: Tue, 26 Mar 2002 19:30:10 -0300
On Tue, Mar 26 2002 at 06:56:20pm -0300, Roberto Pires de Carvalho wrote:
> hum, talvez ter uma thread para cada envio de mensagem seja muito
> overhead pro servidor
Na verdade, pensei em uma thread por usuario; aquela thread e'
"responsavel" por ir enviando as mensagens para aquele usuario; se o
usuario nao esta' la', a thread uma hora desiste do cara e sai. Nao e'
bonito, mas resolve o problema de timeout e e' mais simples de implementar
do que o que voce sugere abaixo.
> acabaria gastando tanto tempo quanto o envio serial se houver uma
> quantidade razoável de salas e usuários.
Hmmm, isso acho que nao; as threads estariam em estado bloqueado quase
100% do tempo. O problema e' que cada thread consome um pouco de memoria,
e o kernel tem um limite de processos rodando, e, no linux, nesse limite
entram as threads tambem.
> uma forma mais bonita seria implementar uma fila de mensagens. Numa
> ponta as mensagens enviadas pelos usuários săo adicionadas ŕ fila, e na
> outra ponta uma quantidade limitada de threads ficam verificando se
> existem mensagens a serem enviadas para os usuários
eu ja' tinha pensado nisso, mas achei que implementar daria muito
trabalho; mas agora me ocorreu um jeito que deve ser bom :-)
Mas o meu problema "basico" continua: o MICO pode funcionar sem problemas
num programa multithreaded?
Ate' +
Nelson