PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Erreur sur ligne quelconque ?
Erreur sur ligne quelconque ?
Débuté par filip, 12 déc. 2005 18:02 - 5 réponses
Posté le 12 décembre 2005 - 18:02
Bonjour,

J'ai un module où j'ai environ 2000 lignes de codes.
Quand je lance ce code, 1000 x ;
donc 1000 x 2000 lignes de codes sont exécutées...

mon exécution se plante à la 712ème fois

si je modifie un peu le code et je le passe à 1999 lignes de codes, mon
plantage se fera à la 713ème fois par exemple...

Le programme se lance et se ferme automatiquement sans raison.

Si je lance le même traitement avec le mode test, j'ai une erreur système
access violation.

Quelqu'un a déjà eu un tel phénomène ? A t il réussi à le résoudre ?

Je dépasse les capacités de qq chose ...

Déjà essayé sur 3 pcs
j'ai ajouté multitache(-1);multitache(20) => pour lui laisser reprendre la
main sur windows

saturation ?
comment libérer ?

J'utilise aussi des zones mémoires



Une idée ? une solution ?


Merci

Philippe
Posté le 12 décembre 2005 - 18:15
Psotric a écrit :
Bonjour,

J'ai un module où j'ai environ 2000 lignes de codes.
Quand je lance ce code, 1000 x ;
donc 1000 x 2000 lignes de codes sont exécutées...

mon exécution se plante à la 712ème fois

si je modifie un peu le code et je le passe à 1999 lignes de codes, mon
plantage se fera à la 713ème fois par exemple...

Le programme se lance et se ferme automatiquement sans raison.

Si je lance le même traitement avec le mode test, j'ai une erreur système
access violation.

Quelqu'un a déjà eu un tel phénomène ? A t il réussi à le résoudre ?

Je dépasse les capacités de qq chose ...

Déjà essayé sur 3 pcs
j'ai ajouté multitache(-1);multitache(20) => pour lui laisser reprendre la
main sur windows

saturation ?
comment libérer ?

J'utilise aussi des zones mémoires


quel code ?
et si tu le lances 500 fois ?
comment veux-tu obtenir une réponse.
si tu incrémentes une zone mémoire, ou un tableau, tu finiras bien par
tout bloquer.
En fait, le but n'est pas de chercher les limites à tout prix.


--
Jacques Trepp
Albygest - 81160 - St Juery
jacques-pas de spam.trepp@free.fr
(enlever '-pas de spam' pour me joindre)
http://www.albygest.com
Posté le 12 décembre 2005 - 18:37
Psotric a présenté l'énoncé suivant :
Bonjour,

J'ai un module où j'ai environ 2000 lignes de codes.
Quand je lance ce code, 1000 x ;
donc 1000 x 2000 lignes de codes sont exécutées...

mon exécution se plante à la 712ème fois

si je modifie un peu le code et je le passe à 1999 lignes de codes, mon
plantage se fera à la 713ème fois par exemple...

Le programme se lance et se ferme automatiquement sans raison.

Si je lance le même traitement avec le mode test, j'ai une erreur système
access violation.

Quelqu'un a déjà eu un tel phénomène ? A t il réussi à le résoudre ?

Je dépasse les capacités de qq chose ...

Déjà essayé sur 3 pcs
j'ai ajouté multitache(-1);multitache(20) => pour lui laisser reprendre la
main sur windows

saturation ?
comment libérer ?

J'utilise aussi des zones mémoires



Une idée ? une solution ?


Merci

Philippe


Un module de 2000 lignes de code ???
Peut-être aurais tu interet a découper ce module en plusieurs
parties...
cela serait peut être plus facile a déboguer...
et puis bon, je sais pas mais je ne vois pas l'interet de lancer 1000 x
ton code...!!!Mais je ne sais pas ce que tu veux faire...
Donnes peut etre un peu plus de détails...

@++

--
Carpe Diem!
[bernard]
Posté le 12 décembre 2005 - 23:05
Bonsoir,

L'exécution 1000 fois ou plus est courante !
J'ai publié un message décrivant un serveur de emails pop3/smtp.
Il y a quelques centaines de ligne de code (le tout dans plusieurs composants).
Et il tourne en boucle tout le temps, toutes les 30 secondes.
Il y a donc des milliers d'exécutions qui sont faites !

J'ai eu passé un temps une erreur aléatoire, du moins que j'ai cru aléatoire.
C'était au final une consultation de email.destinataire[Email.NbDestinataire] avec Email.NbDestinataire=0 au fin fond d'un traitement exécuté rarement.

Mon conseil avant tout, c'est donc de "découper" le traitement pour pouvoir l'exécuter pour test sans telle ou telle partie. Par recoupement vous pourrez déjà repérer le traitement fautif.

Bon courage.


Elian Lacroix
Posté le 13 décembre 2005 - 16:39
Re explication

pour poser mon problème plus précisément =>

i,j,k est un entier


pour i=1 a 1000
pour k=1 a 1000
pour j=1 a 1000
cvar=8
ctxt=9
fin
fin
fin



là j'ai 1000 * 1000 * 1000 lignes de codes !
cas qui peut arriver souvent non ?
Posté le 13 décembre 2005 - 16:41
Mon but n'est pas de trouver les limites mais que cela fonctionne dans le
cas où je suis tombé



"Psotric" <filip@ibelgique.com> a écrit dans le message de news:
439d9959@news.pcsoft.fr...

Bonjour,

J'ai un module où j'ai environ 2000 lignes de codes.
Quand je lance ce code, 1000 x ;
donc 1000 x 2000 lignes de codes sont exécutées...

mon exécution se plante à la 712ème fois

si je modifie un peu le code et je le passe à 1999 lignes de codes, mon
plantage se fera à la 713ème fois par exemple...

Le programme se lance et se ferme automatiquement sans raison.

Si je lance le même traitement avec le mode test, j'ai une erreur système
access violation.

Quelqu'un a déjà eu un tel phénomène ? A t il réussi à le résoudre ?

Je dépasse les capacités de qq chose ...

Déjà essayé sur 3 pcs
j'ai ajouté multitache(-1);multitache(20) => pour lui laisser reprendre la
main sur windows

saturation ?
comment libérer ?

J'utilise aussi des zones mémoires



Une idée ? une solution ?


Merci

Philippe