Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: elgreco en 15 Diciembre 2015, 21:41 pm



Título: Ayuda! struct y memoria compartida
Publicado por: elgreco en 15 Diciembre 2015, 21:41 pm
Hola! Describo brevemente mi problema:
tengo lo siguiente:
//estructura
struct sensor{

    int pid;
    int temp;
    string fecha;
       };
sensor infor;
//una memoria compartida ya creada a la que vinculo mi estructura
infor = (sensor *)shmemo_sensor.getPointer();

me gustaria saber como guardo por ejemplo el numero 30 en el campo temp de mi struct y que quede guardado en la memoria compartida???
gracias!


Título: Re: Ayuda! struct y memoria compartida
Publicado por: fary en 15 Diciembre 2015, 21:48 pm
Podrías explicarte mejor?

Quieres tener dos punteros que apuntan a la misma dirección de memoria, la de la estrucutra?



saludos.


Título: Re: Ayuda! struct y memoria compartida
Publicado por: elgreco en 15 Diciembre 2015, 21:51 pm
Lo que quiero es que en la memoria compartida (a la que pueden acceder dos procesos diferentes) quede guardado en el campo temp por ejemplo el numero 30.


Título: Re: Ayuda! struct y memoria compartida
Publicado por: Eternal Idol en 18 Diciembre 2015, 15:18 pm
infor = (sensor *)shmemo_sensor.getPointer();
infor->temp = 30;

Se supone que la memoria es compartida en cualquier proceso que escribas el valor al leer desde los otros lo obtendran, hay en realidad una sola direccion RAM que contiene cada valor y esta es compartida por mas que haya diferentes direcciones virtuales en cada proceso. No te olvides de sincronizar el acceso.