Hola ,
Estoy teniendo problemas al crear un hilo
Tengo el siguiente código (simplificado a la parte donde me da error)
Atributos de la clase (Padre es una clase virtual)
En el constructor de la clase hago esto
Para acceder a sus métodos tengo que hacer esto:
Ahora lo que estoy intentando hacer es ejecutar ese metodo en un hilo
Lo he intentado como hacen en este ejemplo pero me salta un error
Ejemplo (funcion, argumentos)
Lo que he intentado, me da error en la primera línea
error: invalid use of non-static member function
A ver si me podeis ayudar..
Un saludo y gracias
Estoy teniendo problemas al crear un hilo
Tengo el siguiente código (simplificado a la parte donde me da error)
Atributos de la clase (Padre es una clase virtual)
Código (cpp) [Seleccionar]
std::vector <std::thread> th; //Hilos de ejecucion
std::vector <Padre*> padre; //Puntero a los hijos (Polimorfismo)
En el constructor de la clase hago esto
Código (cpp) [Seleccionar]
padre.push_back(new HijoEjemplo(argumentos del constructor de hijo)); //Los vamos metiendo al final
Para acceder a sus métodos tengo que hacer esto:
Código (cpp) [Seleccionar]
padre.at(0)->moverHijo(parametros del metodo);
Ahora lo que estoy intentando hacer es ejecutar ese metodo en un hilo
Lo he intentado como hacen en este ejemplo pero me salta un error
Ejemplo (funcion, argumentos)
Código (cpp) [Seleccionar]
void bar(int x)
{
// do stuff...
}
std::thread second (bar,0);
Lo que he intentado, me da error en la primera línea
Código (cpp) [Seleccionar]
th.at(0) = std::thread(padre.at(0)->moverHijo, parametros del metodo);
th.at(0).detach();
error: invalid use of non-static member function
A ver si me podeis ayudar..
Un saludo y gracias