Desenvolvi um Client Server em C com criptografia polarssl para transferencia de arquivos usando thread.
O server foi feito em Linux e o Client em Windows, mas estou com um problema, para cada pthread que eu inicio ele cria um processo novo, e ao finalizar a thread o processo não morre, continua ocupando memoria e processamento.
alguém tem ideia do porque isso esta ocorrendo? será que a biblioteca de criptografia esta fazendo isso?
estrutura da criacao da thread:
void cleanup()
{
pthread_exit(NULL);
exit(EXIT_SUCCESS);
return;
} /* cleanup() */
void *Transmissao(void *paramSocket){
//implementacao da thread
[...]
//matando a thread
pthread_exit(NULL);
}
int main(){
pthread_t thread;
//[...]
//iniciando socket com a bibliotea polarssl
//[...]
signal(SIGTERM , cleanup);
signal(SIGINT , cleanup);
//assim que o client se conecta ele cria a thread
pthread_create(&thread, 0,&Transmissao, ¶m);//param é uma struct que eu criei
//[...]
}
Pergunta
caloro
Desenvolvi um Client Server em C com criptografia polarssl para transferencia de arquivos usando thread.
O server foi feito em Linux e o Client em Windows, mas estou com um problema, para cada pthread que eu inicio ele cria um processo novo, e ao finalizar a thread o processo não morre, continua ocupando memoria e processamento.
alguém tem ideia do porque isso esta ocorrendo? será que a biblioteca de criptografia esta fazendo isso?
estrutura da criacao da thread:
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.