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
//[...]
}
Question
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 to comment
Share on other sites
0 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.