2013-08-19 29 views
0

我有一個HasTraits對象,它是使用cPickle從磁盤讀寫的。該物體具有某種特性,其在分配的計算上是昂貴的。從traits documentation,我知道當從磁盤讀取對象時,所有特徵都是,重新命名爲unpickling HasTraits對象:如何防止某些特質的分配

我想阻止從磁盤讀取對象時重新分配昂貴的特質。這可能嗎?

+0

只是一個提示,你應該使用cPickle,它可以高達1000倍的快速閱讀和寫作 –

+0

即時通訊不知道這是否是相關或將工作,但也許pickle對象你分配的特點? –

+0

@VaibhavAggarwal,我正在使用cPickle,我編輯了這篇文章以反映這一點。我不明白你的第二個評論。 – alex

回答

0

讓這種特質短暫如下所述: http://docs.enthought.com/traits/traits_user_manual/advanced.html#persistence (順便說一句,請注意,這是不是你的聯繫,儘管這部分是兩個版本的文檔的有些更新的版本)

+0

問題是,我想特徵具有正確的值,但我不想讓整個'depends_on'鏈響應發生。也許這是不可能的,我沒有詳細的醃汁知識。我不想/需要重新分配的昂貴特質的原因是,如果它在醃製時具有價值,那麼所有'依賴於'昂貴特性的特徵已經作出相應反應。 – alex

+0

我認爲這需要另一個特徵屬性與「瞬態」略有不同。也許一個特徵是'暫時暫時的',當取消時會跳過'通知'步驟(http://code.enthought.com/projects/traits/)。 – alex

相關問題