Bonjour,

Dans une application que je développe, l'utilisateur peut charger des données en mémoire.

Mais il peut arriver qu'il cherche à charger BEAUCOUP de données (plus d'un giga).

Lors du chargement des données, il est proposé à l'utilisateur d'entrer un coefficient de "sous-echantillonnage" qui permet de ne charger que 1/10ème, 1/5ème... des données. (au prix d'une perte de précision, bien sûr)

Tout marche bien, mais...

Si l'utilisateur essaie de charger (par exemple) 1 giga de données et entre un coefficient égal à 1, lors du chargement, je fait un :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
truc = new machin[1 giga]
Ce qui aboutit, en général (selon la machine) à un plantage...

Donc j'aimerais savoir comment determiner la taille maximale que je vais pouvoir allouer (pour indiquer à l'utilisateur que son coef est trop petit, ou qu'il faut qu'il rachete de la RAM...)

PS : à la fois pour Linux et Windows, avec QT

Merci !