Salut tout l'monde,
Voilà, je commence à m'interesser au module psyco, et j'y ai remarqué la fonction bind(func), qui permet de demander à psyco de faire une compilation de la fonction ou méthode... Cela pourrait s'averer très utile pour un de mes projets, seulement je voudrais l'utiliser sur une méthode, et là je ne sais pas trop si il est mieux de placer l'appel à la fonction bind depuis la méthode __init__ de la classe contenant la méthode visée, ce qui marche, mais m'amène à me poser la question de savoir si la compilation n'aura pas lieu à que fois que j'instancierais la fameuse classe, ce qui serait un peu lourd... et pourrait bouffer de la mémoire inutilement...
Sinon, autre endroit que j'ai pensé :
Et la question qui va avec ce cas de figure est la suivante: Est-ce que seule la méthode de l'instance sera affectée, ou est-ce que les methode_a_compil d'autres instances pourront bénéficer des bienfaits de psyco ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 import psyco class Dummy(object): def methode_a_compil(self): pass psyco.bind(Dummy().methode_a_compil)
Ou bien faudra-t-il que je passe par une métaclasse (relou quand même, j'éspère ne pas avoir à en arriver là...) ?
Partager