[eside-ghost] Pthreads

Jon Valdés juanval en gmail.com
Mar Sep 15 13:44:22 CEST 2009


Si no recuerdo mal, los threads se pueden crear en modo detached, que
hace que no haga falta hacer el join al final, y el thread se destruye
automáticamente.

Y lo que dice jonan: la variable data mas vale que la borres desde
dentro de la rutina del thread, porque si no ahi tienes un buen leak.

Un saludoooo

2009/9/15 Iker Perez de Albeniz - Txupete - <txupete en gmail.com>:
> He probado con pthread_join() y que espere q ue se termine el thread y
> parece que el leak desaparece... pero al final es como si tubiera un solo
> thread...
>
> 2009/9/15 Jon Ander Ortiz <jonbaine en gmail.com>
>>
>> Buenas Iker!!
>>
>> Ante todo, comentar que los threads son una buena manera de dispararse a
>> un pie [1,2] :D
>>
>> Sobre el error de pthread_detach, el lugar donde deberías llamarla (una
>> sola vez), debería de ser
>> tras el pthread_create. ¿Como la estás llamanado para que te pete?
>>
>> Sobre el crecimiento de la memoria:
>>
>> * LO PRIMERO DE TODO: No destruyes "data". A primera vista tienes un leak.
>> En un for infinito.
>> Pasale el valgrind que te va pegar un chillido de los buenos en cada bucle
>> si tienes un leak ahí.
>>
>> * Cuando la función llamada en pthread_create, termina, se produce un
>> pthread_exit implícito, y
>> la memoria asociada a dicho thread (stack y las variables TLS [3] ) se
>> liberan. Si estás llamando explicitamente
>> a esta función desde algún destructor, o alguna cosa rara puede ser el
>> origen de tus problemas.
>>
>> Un saludete:
>> Jonan
>>
>>
>> [1]http://badtux.org/home/eric/editorial/threads.php
>> [2]http://www.kuro5hin.org/story/2002/11/18/22112/860
>> [3]http://en.wikipedia.org/wiki/Thread-local_storage
>>>
>>> _______________________________________________
>>> eside-ghost mailing list
>>> eside-ghost en listas.deusto.es
>>> https://listas.deusto.es/mailman/listinfo/eside-ghost
>>
>>
>> _______________________________________________
>> eside-ghost mailing list
>> eside-ghost en listas.deusto.es
>> https://listas.deusto.es/mailman/listinfo/eside-ghost
>
>
> _______________________________________________
> eside-ghost mailing list
> eside-ghost en listas.deusto.es
> https://listas.deusto.es/mailman/listinfo/eside-ghost
>


Más información sobre la lista de distribución eside-ghost