Oui enfin il y a quand même un problème avec le comptage de référence naïf (je dis "naïf" parce que je n'ai pas cherché s'il existait des variantes qui ne posent pas ce problème) : dans le cadre d'un programme multi-thread, tu es obligé d'utiliser des opérations atomiques pour incrémenter/décrémenter ton compteur. Et ça, en terme de performances, c'est la mort (instructions en elles-mêmes, sans parler du cache line bouncing).
C'est l'une des principales raisons pour lesquelles CPython a toujours le GIL...
[^] # Re: templates variadiques
Posté par neologix . En réponse à la dépêche Le standard C++0x a enfin été voté. Évalué à 2.
Oui enfin il y a quand même un problème avec le comptage de référence naïf (je dis "naïf" parce que je n'ai pas cherché s'il existait des variantes qui ne posent pas ce problème) : dans le cadre d'un programme multi-thread, tu es obligé d'utiliser des opérations atomiques pour incrémenter/décrémenter ton compteur. Et ça, en terme de performances, c'est la mort (instructions en elles-mêmes, sans parler du cache line bouncing).
C'est l'une des principales raisons pour lesquelles CPython a toujours le GIL...