begin process at 2012 02 16 23:04:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Système

 > 

Mémoire

 > 

utilisation de chaines de caractères très très grandes et ralentissement de mon programme


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

utilisation de chaines de caractères très très grandes et ralentissement de mon programme

vendredi 30 mai 2008 à 12:43:50 | utilisation de chaines de caractères très très grandes et ralentissement de mon programme

mickadevelop

Bonjour à tous et toutes,

Voila j'ai créé un programme qui concatène un tres grand nombre de mots les uns derrière les autres.
Une question me chagrine lorsque je boucle 50000 fois j'ai l'impression que mon programme ralenti.
En recherchant j'ai cru comprendre qu'il fallait que j'augmente la taille de mon buffer pour que le programme ne ralentisse pas trop. Est ce exacte? Et comment puis- je faire pour gerer cette taille de buffer?

Merci d'avance pour votre aide.

mickadevelop
vendredi 30 mai 2008 à 13:42:09 | Re : utilisation de chaines de caractères très très grandes et ralentissement de mon programme

NHenry

Membre Club Administrateur CodeS-SourceS
Bonjour

De déclarant une variable String et en la remplissant par des espaces (Space$(...)), puis Mid$ en Mid(MachaineDest,Offset)=Chaine source

Sinon, tu peux éventuellement utiliser un tableau de String (si tu connais le nombre délément avant d'entrer dans ta boucle) et ensuite utiliser Join pour tout lier.

Le fer à souder a besoin d'une panne pour fonctionner.
VB (6, .NET1&2), C++, C#.Net1
Mon site
vendredi 30 mai 2008 à 18:27:15 | Re : utilisation de chaines de caractères très très grandes et ralentissement de mon programme

yvesyves

Membre Club

Sinon tu peux toujours créer un fichier texte. Il pourra contenir une bible si tu veux mais l'accès est quand même plus lent que l'acces à la Ram. A toi de voir.

samedi 31 mai 2008 à 00:21:58 | Re : utilisation de chaines de caractères très très grandes et ralentissement de mon programme

jack

Administrateur CodeS-SourceS
Salut
Oui, c'est normal.
Au fur et à mesure que tu stockes des données dans une chaine String, elle se place en mémoire.
Si vraiment tu y mets beaucoup de données et que tu arrives à saturation de la mémoire, le système commence à stocker des morceaux de mémoire dans un fichier (PageFile.SYS) nommé "Mémoire virtuelle".
Alors bien sûr, les échanges mémoire-disque dur ralentissent la machine.
Si la machine ralentit vraiment de trop, c'est peut être aussi parce que le PageFile.sys devient trop petit.
Il est recommandé d'avoir une fichier de taille = 1.5 fois la mémoire.
Tu peux agir sur sa taille dans le panneau de config + Système + onglet Avancé + onglet Avancé encore + frame "Mémoire virtuelle.

Comme te le précausisent nos camarades, il n'est pas tellement normal d'avoir autant de données en mémoire.
Il serait bon de revoir cela et envisager une base de données ou un fichier de stockage.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)


Cette discussion est classée dans : programme, utilisation, chaines, caractères, grandes


Répondre à ce message

Sujets en rapport avec ce message

Problème d'espace dans les comparaisons de chaines de caractères [ par m.bazier ] J'essai, dans mon code VBA, de comparer deux champ de table différente.Dans le 1er champ, j'ai :"MonChamp"Et dans le 2ème, j'ai :"MonChamp Récuperer les caractères tapés... [ par Jésus-Christ ] Est-ce qu'il y a un génie qui peut me trouver le code pour faire un programme qui me permetterai de récupérer les caractères tapés sur le clavier. J'a utilisation de l'indexation [ par sony22 ] Afficher dans une fenêtre textbox une "demande",le programme doit chercher toutes les cellules dans une colonneet m'afficher dans une fenêtre combobox Un interface de programme ? les grandes lignes [ par holger ] Voilà dans quelque temps je vais me lancé dans la programmation d'un interface de programme et sa réalisation.J'aurai souhiater deux trois conseils de coller deux chaines de caractères [ par fabiin ] Salut !Exist-t'il une api ki permet de coller deux chaine,en gros ca serait l'equivalent de:a$ = a$ + b$merci pas avance@+Fabs<img src=/imgs2/smile_b Chaines de Caractères [ par Moria ] Slt,J'aurai 3 petites questions :1°\ Comment savoir le nombre de caractère "|" dans une chaine de caractère ?2°\ Comment ajouter un texte dans un fich 1question pr les chaines de caractères...... [ par spiderone ] çà peut paraître simple mais je ne comprends la différence entre les fonctions dir et dir$ est-ce que le traitement est le même????de même pour les a question pour utilisation du programme dowloader [ par quicknsilver ] utilisation programme piano6.0 [ par laboul ] bonjour, je suis un nouveau venu, et j'ai téléchargé "le piano virtuel 6.0".helas je ne parviens pas à le lancer, même après avoir mis dans le dossier Aidez moi svp :-(, utilisation service nt [ par alex62fr ] salut !!aidez moi svp svp !!lorqu'on cree un programme qui sera un futur service, ya t'il des choses a declarer ou a faire dans le programme pour qu'i


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales