Structure tableau memoire partage [Résolu]

Signaler
Messages postés
19
Date d'inscription
mercredi 31 octobre 2007
Statut
Membre
Dernière intervention
3 octobre 2011
-
Messages postés
19
Date d'inscription
mercredi 31 octobre 2007
Statut
Membre
Dernière intervention
3 octobre 2011
-
Bonjour,

Je suis face a un dileme
je m entraine sur les memoires partages; j essaye de partage des donnes entre plusieurs processus

Voici ma structure

typedef struct s_list
{
 int x;
 int y;
 char **tab;
}



pas de problème quand pour accéder à x et y depuis n' importe quels processus; mais quand j'essai d’accéder au tableau tab depuis un processus qui est différent du processus qui a créer la shm, le tableau est toujours vide ce qui n est pas normal,

Quelqu’un pourrait il m'expliquer? et comment partage mon tableau en gardant toujours cette même structure.
Merci d'avance.

3 réponses

Messages postés
10
Date d'inscription
jeudi 27 mai 2010
Statut
Membre
Dernière intervention
4 juillet 2011

c'est normal.
ton tab est un pointeur qui va pointer dans la mémoire du processus qui a créé tab, tu ne peux donc pas accéder à tab depuis un autre processus.

difficile pour moi de donner une solution cependant...

tu pourrait fixer la taille du tableau du style:
typedef struct s_list
{
 int x;
 int y;
 char tab[nb_r][nb_c];
}


mais ton tableau sera fixe...
Messages postés
3839
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
15 avril 2021
121
Sans ton code, ça va être très difficile de t'aider...

Je peux toutefois te proposer cet exemple, qui utilise une structure partagée entre plusieurs instance d'un même programme:
http://www.codemaestro.com/reviews/11

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
19
Date d'inscription
mercredi 31 octobre 2007
Statut
Membre
Dernière intervention
3 octobre 2011

Merci Axelorque c exactement ce que je viens de faire et ca marche meme si j aurai voulu que la taille soit dynamique.