Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Acceso a punteros desde Threads

Estas en el tema de Acceso a punteros desde Threads en el foro de C/C++ en Foros del Web. Hola a todos! Mi problema es que necesito acceder desde el método, que va a ejecutar como un thread y por tanto es estático, a ...
  #1 (permalink)  
Antiguo 03/08/2009, 13:58
 
Fecha de Ingreso: septiembre-2007
Mensajes: 8
Antigüedad: 16 años, 8 meses
Puntos: 0
Acceso a punteros desde Threads

Hola a todos!

Mi problema es que necesito acceder desde el método, que va a ejecutar como un thread y por tanto es estático, a un artributo de la clase que es un puntero a una imagen, lo cual me dice al compilar que no es posible.

Cómo podría acceder a este atributo que es un puntero desde el thread?

Gracias y saludos
  #2 (permalink)  
Antiguo 04/08/2009, 01:05
 
Fecha de Ingreso: septiembre-2007
Mensajes: 8
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Acceso a punteros desde Threads

He encontrado una posible solución, y es pasarle el puntero por parámetro al thread.

Sin embargo, sólo puede pasarle un puntero por parámetro y necesito acceder en el threar a más de un atributo que son punteros.

Gracias y saludos
  #3 (permalink)  
Antiguo 04/08/2009, 06:16
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: Acceso a punteros desde Threads

Digamos que tenes:

Código:
Clase *c; //un puntero a un objeto tu clase, usaste new en algnun momento para crear el objeto
Entonces creas el hilo:
Código:
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)Hilo, (LPVOID)c, 0, 0);
Y en el hilo:
Código:
DWORD WINAPI Hilo(LPVOID lpParameter)
{
  Clase *c = (Clase*)lpParameter;
  c->loQueSea;
  c->otraCosa();
}
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #4 (permalink)  
Antiguo 05/08/2009, 05:38
 
Fecha de Ingreso: septiembre-2007
Mensajes: 8
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Acceso a punteros desde Threads

Cita:
Iniciado por Eternal Idol Ver Mensaje
Digamos que tenes:

Código:
Clase *c; //un puntero a un objeto tu clase, usaste new en algnun momento para crear el objeto
Entonces creas el hilo:
Código:
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)Hilo, (LPVOID)c, 0, 0);
Y en el hilo:
Código:
DWORD WINAPI Hilo(LPVOID lpParameter)
{
  Clase *c = (Clase*)lpParameter;
  c->loQueSea;
  c->otraCosa();
}
Solucionado!

Gracias y saludos
  #5 (permalink)  
Antiguo 05/08/2009, 06:28
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: Acceso a punteros desde Threads

De nadas
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:30.