J'ai une classe qui boucle sur certains fichiers de données, les traite, puis réécrit de nouvelles données. L'analyse de chaque fichier est complètement indépendante des autres. La classe contient les informations nécessaires à l'analyse de ses attributs, mais l'analyse n'a pas besoin de modifier les attributs de la classe. Ainsi je peux faire l'analyse d'un fichier de données une seule méthode de ma classe. L'analyse pourrait en principe se faire en parallèle puisque chaque fichier de données est indépendant. En aparté, j'envisageais de rendre ma classe itérable. Puis-je utiliser le module multitraitement pour générer des processus qui sont des méthodes de ma classe? J'ai besoin d'utiliser le multitraitement parce que j'utilise du code tiers qui a une très mauvaise fuite de mémoire (remplit tous les 24 Go de mémoire après environ 100 fichiers de données).Python - Les méthodes de classe sont-elles multiprocessues?
Si non, comment vous y prendrez-vous? Souhaitez-vous simplement utiliser une fonction normale appelée par ma classe (en passant toutes les informations dont j'ai besoin en tant qu'arguments) au lieu d'une méthode? Comment les arguments sont-ils transmis aux fonctions en multitraitement? Est-ce que ça fait une copie profonde?
Merci beaucoup. Est-ce juste parce que les méthodes sont juste des fonctions avec 'self' passé comme premier argument (qui serait passé par la valeur de deepcopy dans ce cas)? Je pensais qu'il y avait une sorte de différence interne. – kiyo