Gambas France BETA

Connexion

Pas de compte ? Incription

Fuite de mémoire

1
AuteurMessages
Patrick#1 Posté aujourd'hui à 06:17:37
Bonjour,
Cela vous est-il déjà arrivé ?
Sur un de mes programmes Laurux, l'entée des articles, je n'arrive pas à libérer la mémoire. Je peux aller jusqu'a planter l'ordinateur.
La fermeture du formulaire même après destruction des objets s'y rattachant n'y change rien. Je ne retrouve la mémoire qu'après fermeture complète de Laurux.
À part l'âge du programmeur, une idée ?
gambix#2 Posté aujourd'hui à 08:22:25
La simplicité évite les erreursCertainement un problème de création d'objets en boucle

J'ai le temps d'y regarder maos il va me falloir une archive de laurux a jour et la bdd en l'état actuel (en mp bien sur)

Ainsi que ce que tu fais pour arriver au soucis
Ce que Gambas m'a appris c'est qu'avec le temps on peut être capable de tout.
Patrick#3 Posté aujourd'hui à 09:30:56
Oui c'est bien une création d'objet en boucle.
Les sources sont là : https://github.com/PatrickMag/Laurux/tree/v3.69pat
Les class concernées :
- commande1 : Formulaire principal pour les achats, la suppression des lignes saisies (objet en boucle) annul_click().
- Achat : class qui hérite de SaiTableau et qui gère le tableau de saisie des achats.
- SaiTableau : Class qui gère un tableau de ligne saisie, la suppression des lignes => public sub Delete()
- SaiLig : Class qui gère une ligne du tableau, la suppression de la ligne => pubblic sub Delete()
- GesTar : Formulaire qui gère les tarifs de vente, il utilise aussi SaiTableau. Supression du formulaire : pubblic sub Delete()
- artopt : Formulaire qui affiche les options boissons et/ou produits pétroliers, ne s'affiche que si ces options sont activées.
J'avais déjà eu des soucis avec la suppression de ces lignes. Sur les commandes avec beaucoup de lignes celles-ci sont supprimées avant que l'on puisse reprendre la main sur le programme, tu vas donc trouver des choses qui se suppriment 2 fois.
Je te fais passer une sauvegarde.
1