Il est clair que si l'allocation d'un objet de quelques octets échoue, c'est que ta machine est à la ramasse partout car elle n'a de mémoire nulle part et doit swapper à mort depuis un moment. Que l'application crash à ce moment (sans destruction de données bien entendu) est un traitement d'erreur qu'on pourrait considérer comme acceptable car après tout à part quitter tu n'as pas grand chose à faire.
Ça dépend complètement de l'application! Si tu fais du calcul numérique en C++ tu as intérêt à gérer correctement l'épuisement de la mémoire disponible pour ton processeur. Ce type d'application favorise grandement la fragmentation de la mémoire et alloue de gros objets: le système peut très bien tourner sainement et quand-même refuser une alloc trop grosse.
Dans un domaine différent on peut mettre des quotas sur les processus, ça peut aussi être une raison pour lesquelles la demande de mémoire échoue, sans que le système ne soit particulièrement sous pression.
[^] # Re: Oublies le C.
Posté par Michaël (site web personnel) . En réponse au journal C(++) ?. Évalué à 3.
Ça dépend complètement de l'application! Si tu fais du calcul numérique en C++ tu as intérêt à gérer correctement l'épuisement de la mémoire disponible pour ton processeur. Ce type d'application favorise grandement la fragmentation de la mémoire et alloue de gros objets: le système peut très bien tourner sainement et quand-même refuser une alloc trop grosse.
Dans un domaine différent on peut mettre des quotas sur les processus, ça peut aussi être une raison pour lesquelles la demande de mémoire échoue, sans que le système ne soit particulièrement sous pression.