Hola tengo un problema con una aplicación que crea múltiples threads. Para ello estoy usando el método:
int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine)(void*), void *arg);
El problema que tengo es que le estoy pasando una clase api en el ultimo parámetro arg que es común para todos los hilos que contiene métodos comunes y alguna variable que es personal para cada hilo.
El problema que tengo es que en el transcurso de crear el hilo y recoger la información en el método del thread (hacer cast de la clase y recuperar esta información personal de cada hilo) el hilo siguiente "machaca esta información con la suya".
Como ejemplo digamos que tenemos una clase api que contiene:
int idevento;
void ejecutarEvento (evento);
el siguiente hilo me machaca el id del evento y se me ejecuta siempre el ultimo evento.
Espero haberme explicado bien.
Alguien se le ocurre alguna idea para que pueda intentar alguna otra cosa?
Muchas gracias de antemano y espero haberme explicado bien.