Pb de segment fault

View: New views
3 Messages — Rating Filter:   Alert me  

Pb de segment fault

by Olivier Cruilles :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Bonjour,

Je m'excuse de revenir vers vous pour mon problème. Je ne sais pas si j'ai envoyé mon dernier émail a la bonne adresse en fait.

Fabien Bodard m'as répondu concernant la manière dont le pourrais vous aidé dans le projet de Gambas.

Le projet que je suis en train de terminé pourrais peu être vous intéresser sous forme d'exemple de programme pour débuter car il mets en oeuvre un grand nombre de commande et parties de Gamba.

Enfin ma façon de programmer n'est peut être par suffisamment 'propre' pour en faire un exemple. C'est vous qui me dirait.
La partie du projet écrite en Gambas représente plus de 10000 lignes de codes.
Vous me direz aussi quand vous voudrais accéder a mon MacBook sous MacOs X pour vos tests.

Dans votre dernier émail vous m'avez fait remarqué que dans mon petit logiciel d'ordonnanceur, je ne me préoccupais pas des process snmpget déja lancé lorsque j'en relancais des nouveaux. Peut être que mon problème vient de la. Je voudrais bien faire ce que vous me demandez, mais voila, je ne sais pas du tout comment faire ???

Je peut récupérer le PID de chaque process SnmpGet et tester si ils sont toujours actifs ou non après avoir normalement disparu, mais comment détruire un objet de manière forcé en Gambas.

Si j'ai bien lu la documentation, chaque fois qu'une variable fait référence a un objet sont compteur interne est incrémenté et lorsque le compteur interne revient a 0, aprés tout les 'dé-referencement a cet objet', l'objet est détruit par l'interpréteur Gambas.

a) Est il possible de suivre ce compteur pour savoir qu'elle valeur il a ?

b) Est il possible de supprimer un objet de manière forcé ?

c) J'ai terminé mon petit logiciel et rajouté encore plus de process (commande 'rrdtool update', commande 'date') et j'ai toujours de problème de mémoire et maintenant l'erreur 'Segment fault' (en shell) ou 'Erreur #11 ...' (lorsque je lance le logiciel a partir de l'IDE Gambas)

Pouvez vous m'aider a résoudre ce problème, quitte a réécrire tout depuis le début, c'est pas un problème.

Merci beaucoup d'avance.

--
Olivier CRUILLES
Email: linuxos@...

      * hypoaristerolactotherapie : methode de depannage des machines
        par le coup de pied en bas a gauche.
      * Mais si, Linux est user-friendly. Mais Linux il choisit ses
        amis, lui !
      * Software is like sex, it's better when it's free (Linus Torvalds)



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Gambas-user-fr mailing list
Gambas-user-fr@...
https://lists.sourceforge.net/lists/listinfo/gambas-user-fr

gbUpdated-0.0.103-Gambas.2.x.tar.gz (21K) Download Attachment
gbUpdated-0.0.105.Gambas.1.x.tar.gz (21K) Download Attachment

Re: Pb de segment fault

by Benoit Minisini :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On dimanche 27 avril 2008, linus wrote:

> Bonjour,
>
> Je m'excuse de revenir vers vous pour mon problème. Je ne sais pas si j'ai
> envoyé mon dernier émail a la bonne adresse en fait.
>
> Fabien Bodard m'as répondu concernant la manière dont le pourrais vous aidé
> dans le projet de Gambas.
>
> Le projet que je suis en train de terminé pourrais peu être vous intéresser
> sous forme d'exemple de programme pour débuter car il mets en oeuvre un
> grand nombre de commande et parties de Gamba.
>
> Enfin ma façon de programmer n'est peut être par suffisamment 'propre' pour
> en faire un exemple. C'est vous qui me dirait.

C'est un peu le problème. Non pas que les exemples actuels soient programmés
réellement proprement, mais votre programme est un peu trop "sale" :-)

> La partie du projet écrite
> en Gambas représente plus de 10000 lignes de codes. Vous me direz aussi
> quand vous voudrais accéder a mon MacBook sous MacOs X pour vos tests.

Je n'ai pas vraiment le temps en ce moment malheureusement... L'idéal serait
de trouver quelqu'un qui ait un Mac et qui sache compiler des programmes sous
Unix. Comme ça j'aurai juste à effectuer le débogage à distance.

>
> Dans votre dernier émail vous m'avez fait remarqué que dans mon petit
> logiciel d'ordonnanceur, je ne me préoccupais pas des process snmpget déja
> lancé lorsque j'en relancais des nouveaux. Peut être que mon problème vient
> de la. Je voudrais bien faire ce que vous me demandez, mais voila, je ne
> sais pas du tout comment faire ???
>
> Je peut récupérer le PID de chaque process SnmpGet et tester si ils sont
> toujours actifs ou non après avoir normalement disparu, mais comment
> détruire un objet de manière forcé en Gambas.

Les objets Process ont une méthode Kill pour tuer un processus.

>
> Si j'ai bien lu la documentation, chaque fois qu'une variable fait
> référence a un objet sont compteur interne est incrémenté et lorsque le
> compteur interne revient a 0, aprés tout les 'dé-referencement a cet
> objet', l'objet est détruit par l'interpréteur Gambas.
>
> a) Est il possible de suivre ce compteur pour savoir qu'elle valeur il a ?

Oui, mais ça ne sert pas à grand chose.

>
> b) Est il possible de supprimer un objet de manière forcé ?

Non.

>
> c) J'ai terminé mon petit logiciel et rajouté encore plus de process
> (commande 'rrdtool update', commande 'date') et j'ai toujours de problème
> de mémoire et maintenant l'erreur 'Segment fault' (en shell) ou 'Erreur #11
> ...' (lorsque je lance le logiciel a partir de l'IDE Gambas)
>
> Pouvez vous m'aider a résoudre ce problème, quitte a réécrire tout depuis
> le début, c'est pas un problème.
>
> Merci beaucoup d'avance.

Dans la classe CSnmp, vous avez une méthode pour démarrer, pas pour arrêter.
C'est déjà le signe d'une possible erreur de logique quelque part.

Vous pouvez faire une méthode d'arrêt explicite basée sur la méthode Kill.

Vous pouvez aussi le faire implicitement dans la méthode _free(). C'est le
plus simple, une ligne de code à rajouter (TRY ProcessSnmp.Kill), et tout
devrait mieux se comporter. Si ça ne change rien, c'est qu'il y a un autre
problème ailleurs !

Cordialement,

--
Benoit Minisini

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Gambas-user-fr mailing list
Gambas-user-fr@...
https://lists.sourceforge.net/lists/listinfo/gambas-user-fr

Re: Pb de segment fault

by Benoit Minisini :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On dimanche 27 avril 2008, linus wrote:
>
> c) J'ai terminé mon petit logiciel et rajouté encore plus de process
> (commande 'rrdtool update', commande 'date') et j'ai toujours de problème
> de mémoire et maintenant l'erreur 'Segment fault' (en shell) ou 'Erreur #11
> ...' (lorsque je lance le logiciel a partir de l'IDE Gambas)
>

Pour le segfault, c'est dans 99% des cas un bug dans l'interpréteur, qui ne
devrait jamais planter. Juste emettre des erreurs.

Si vous pouvez reproduire le segfault, essayez d'isoler le problème et de
m'envoyer un bout de code provoquant le segfault. Comme ça je pourrai
corriger le bug.

A+

--
Benoit Minisini

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Gambas-user-fr mailing list
Gambas-user-fr@...
https://lists.sourceforge.net/lists/listinfo/gambas-user-fr
LightInTheBox - Buy quality products at wholesale price