| Remplissage d'une liste. | |
|
|
Auteur | Message |
---|
pan59
Nombre de messages : 367 Age : 67 Localisation : Wattignies Date d'inscription : 16/10/2011
| Sujet: Remplissage d'une liste. Mar 25 Déc 2012 - 9:38 | |
| Bonjour.
Je dois remplir un objet List avec un fichier à l'aide de File_LOAD. Ce fichier contient environ 175.000 items.
Le chargement est très long, à mon avis.
Connaissez-vous un moyen plus rapide ?
Merci de votre aide. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Remplissage d'une liste. Mar 25 Déc 2012 - 11:08 | |
| | |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Remplissage d'une liste. Mar 25 Déc 2012 - 11:29 | |
| Minibug. tu penses comme moi, mais bon, j'ai déjà essayé de dire à pan59 qu'il y avait certainement des points à améliorer dans la réflexion même du programme. Je ne pense pas que l'on pourra le conseiller sur ce point. Du coup optimiser un programme que l'on ne connait pas c'est réservé aux personnes douées de pré science ... | |
|
| |
pan59
Nombre de messages : 367 Age : 67 Localisation : Wattignies Date d'inscription : 16/10/2011
| Sujet: Remplissage d'une liste. Mar 25 Déc 2012 - 14:46 | |
| Bonjour.
Merci à tous de vos réponses.
Et bon Noël.
En fait, la liste de 175.000 éléments me sert d'index de recherche, donc il m'est difficile de faire autrement que de la charger entièrement dans un objet List. J'avais tenté une autre solution en utilisant des fichiers binaires, mais il s'est avéré que cette méthode était encore plus longue !! | |
|
| |
Invité Invité
| Sujet: Re: Remplissage d'une liste. Mar 1 Jan 2013 - 11:01 | |
| Bonjour, et bonne année que je renouvelle. Je crois qu'il y a un problème.
Pour mon propre programme, dont je ne peux rien dire, car je suis certain que certain d'entre-vous, et des plus fors me dirait qu'il ne faut pas rêver, enfin peut importe, je me suis rendu compte d'un problème.
Si je prend en exemple un programme de disons 2000 lignes dont je modifie celles-ci par item_idelete et item_insert, cela se traite selon le cas, dans les 15 à 30 secondes.
Si je prend pagiciel, qui en a plus de 4700 actuellement, il faut plus d'une 1/2 heure pour arriver au même résultat. Au bout d'un moment, chaque ligne demande près d'une seconde pour être modifiée.
On dirait qu'au bout d'une certaine quantité de mémoire, Panoramic demande une allocution de celle-ci supplémentaire à chaque ligne. Je ne suis pas expert en Windows, et même nul, mais je suppose que c'est ce qui se passe. |
|
| |
pan59
Nombre de messages : 367 Age : 67 Localisation : Wattignies Date d'inscription : 16/10/2011
| Sujet: Remplissage d'une liste. Jeu 3 Jan 2013 - 11:27 | |
| Bonjour à tous.
Et bien moi, je suis super content, car je viens de résoudre un problème difficile avec Panoramic. Ce problème m'a toutefois demandé une semaine de travail.
Au départ, le remplissage de mon objet List avec plus de 175.000 éléments demandait environ 25 secondes.
Maintenant, en divisant mon fichier d'origine en 5 morceaux, le remplissage de mes 5 nouveaux objets List ne demande plus que 6 secondes, bien que le nombre global d'éléments à charger soit le même.
Allez savoir pourquoi !
| |
|
| |
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Remplissage d'une liste. Jeu 3 Jan 2013 - 11:53 | |
| Bonjour Pan59, Pour ton problème, moi j'aurais utilisé une dlist pour charger les 175000 éléments, (c'est le plus rapide, j'ai testé avec 225000 éléments en 3sec), et j'aurais fait un list copiant une partie du dlist, la partie à traiter ou à visionner dans le programme. Je ne sais pas si ça t'aidera! A+ | |
|
| |
Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Remplissage d'une liste. Jeu 3 Jan 2013 - 12:52 | |
| Bonjour, Pourquoi ne pas utiliser SQLIte?... C'est pas compliqué à mettre en oeuvre et c'est quand même très puissant.
avec un SGBDR, pour le temps d'accès selon un critère donné, on parle en millisecondes... et tu n'est pas obligé de charger une liste avec tout tes éléments...
| |
|
| |
pan59
Nombre de messages : 367 Age : 67 Localisation : Wattignies Date d'inscription : 16/10/2011
| Sujet: Remplissage d'une liste. Jeu 3 Jan 2013 - 15:23 | |
| Bonjour.
Merci beaucoup Bignono.
Effectivement, le remplissage d'une Dlist s'avère beaucoup plus rapide qu'une List (inférieur à 1 seconde pour 175.000 éléments) !
Mais un autre problème se pose:
Il n'est plus possible de rechercher un élément à l'aide de la méthode suivante, figurant dans KGF.DLL !
Donc, retour au point de départ.
Merci de votre aide. - Code:
-
hnd% = handle(numero_objet_liste%) res% = dll_call3("SearchListBox",hnd%,0,adr(element$)) | |
|
| |
Contenu sponsorisé
| Sujet: Re: Remplissage d'une liste. | |
| |
|
| |
| Remplissage d'une liste. | |
|