(初歩的な)質問があります。
私は複数の webapp (ピラミッド web アプリ) を実行するつもりであり、両方の webapp で使用でき、ピラミッド構成が含まれる可能性のある共通ライブラリ (そのベースアプリと呼びましょう) があります。 )同じvirtualenvに座ってしまいます。
私の質問は次のとおりです。このライブラリのクラスにモンキー パッチを適用した場合の Python の分離レベルは何ですか (現在、両方の Web アプリケーションから参照される可能性があるそのライブラリのクラスの一部のベースを動的に変更しています)。
例えば:
ベースアプリで:
class_from_baseapp(grandparent):
pass
派生アプリ 2 で:
from baseapp import class_from_baseapp
#do some stuff with this class
#and have another bunch of child classes too!
class_from_childapp2(class_from_baseapp):
pass
派生アプリ 1 で:
from baseapp import class_from_baseapp
# then what I do is I change this dynamically to
# class_from_baseapp(grandparent, mixin_class):
# by altering the class' __bases__
class_from_childapp1(class_from_baseapp):
pass
繰り返しますが、私の質問は次のとおりです。上記と同じクラスをインポート/使用する場合、このサルのパッチは他の Web アプリ (Web アプリ 1) にリークしますか? Python インタープリターのプロセスとスレッドの分離がどのように機能するかわかりません。