Utilisation des mutex en matlab
bilal_sayed1
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
tchouf -
tchouf -
Bonjour,
j'ai un projet sur matlab dans lequel 6 differentes instances de Matlab doivent enregistrer des variables dans un même fichier (database.mat) et d'un temp a un autre, ces instances de Matlab doivent lire ce fichier. Le problème est que lorsque une instance doit lire le fichier (database.mat) et en meme temp une autre instance est en train de sauvegarder le même fichier. L'erreur que je rencontre est :
Je sais qu'en language C, on peut utiliser des mutex pour ne pas tomber dans cette erreur et je sais encore qu'on peut utiliser des fichiers écrits en language C dans Matlab mais je ne sais pas comment je doit ecrire le code pur cela.
SVP j'ai besoin d'un reponse rapide de vous.
j'ai un projet sur matlab dans lequel 6 differentes instances de Matlab doivent enregistrer des variables dans un même fichier (database.mat) et d'un temp a un autre, ces instances de Matlab doivent lire ce fichier. Le problème est que lorsque une instance doit lire le fichier (database.mat) et en meme temp une autre instance est en train de sauvegarder le même fichier. L'erreur que je rencontre est :
Je sais qu'en language C, on peut utiliser des mutex pour ne pas tomber dans cette erreur et je sais encore qu'on peut utiliser des fichiers écrits en language C dans Matlab mais je ne sais pas comment je doit ecrire le code pur cela.
SVP j'ai besoin d'un reponse rapide de vous.
A voir également:
- Utilisation des mutex en matlab
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Objectif 55 200 quelle utilisation - Forum Photo numérique
- Imprimante en cours d'utilisation ✓ - Forum Matériel & Système
- Cliquez sur ce lien. en n'utilisant que le clavier, quel mot obtenez-vous ? ✓ - Forum souris / Touchpad
1 réponse
Bonsoir,
si tu sais comment faire en C, tu peux coder ta fonction dans ce langage.
Les fichiers mex permettent d'exécuter du code C sous matlab. Il faut juste faire une passerelle entre matlab et ton code C "mafonction.c", grâce à la fonction "passerelle.c" :
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
Déclaration des entrées et sorties;
Récupération des entrées;
mafonction;
Fabrication des sorties;
}
Tu compile "passerelle.c" grâce au mot-clé "mex" dans matlab.
ça te crée un fichier "passerelle.mexXXX", que tu peux appeler directement depuis matlab.
Voilà, j'espère que c'est ce que tu voulais.
Si la question portait plus sur les mutex, là je ne peux pas t'aider... :s
Tchouf
si tu sais comment faire en C, tu peux coder ta fonction dans ce langage.
Les fichiers mex permettent d'exécuter du code C sous matlab. Il faut juste faire une passerelle entre matlab et ton code C "mafonction.c", grâce à la fonction "passerelle.c" :
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
Déclaration des entrées et sorties;
Récupération des entrées;
mafonction;
Fabrication des sorties;
}
Tu compile "passerelle.c" grâce au mot-clé "mex" dans matlab.
ça te crée un fichier "passerelle.mexXXX", que tu peux appeler directement depuis matlab.
Voilà, j'espère que c'est ce que tu voulais.
Si la question portait plus sur les mutex, là je ne peux pas t'aider... :s
Tchouf