リモートストア上のオブジェクトを管理するためのコードを使用しているため、ストアからの読み取り結果としてオブジェクトを作成することも、ストアに送信されるオブジェクトを作成することもできます。作成時間。実際の目標は、リモートストア上のオブジェクトの表現が存在する場合にのみオブジェクトを作成することです。リモートストアに表現がない場合、オブジェクトは作成されません。classmethodを自己作成オブジェクトコンストラクタとして
class myClass:
def __init__(self, parameter1, parameter2)
self.param1 = parameter1
self.param2 = parameter2
@classmethod
def create(parameter1, parameter2):
if SendToRemoteStore(parameter1, parameter2) == True:
return myClass(parameter1, parameter2)
else:
return None
def __del__():
DeleteFromRemoteStore(self)
# Two ways to create an instance
# As the result of a remote read:
data = GetFromRemoteStore()
object1 = myClass(data['foo'], data['bar'])
# Or if I'm creating the object here and
# need to save it to store on creation:
object2 = myClass.create('baz', 'bar')
ここで質問がありますか? –
また、関連するものについては '__del__'に依存しないでください。オブジェクトの処理が完了したら明示的に処理してください。おそらく、[コンテキストマネージャ](http://www.doughellmann.com/PyMOTW/contextlib/)を何かが正常に処理されなかった場合、 '__del__'に警告を出します。 – delnan
Heh、私は何とか質問の質問部分をやめました - 本当に "これは間違っていますか?" – caw