代码之家  ›  专栏  ›  技术社区  ›  danben

在python中保持大型对象在内存中的同时,代码会发生更改

  •  2
  • danben  · 技术社区  · 14 年前

    我有一个应用程序,首先从磁盘加载一个大的腌制trie(173m),然后使用它进行一些处理。我经常更改处理部件,这很不方便,因为加载trie大约需要15分钟。我正在寻找一种方法来消除测试过程中的重复加载,因为trie从未改变。

    有一件事我做不到,那就是使用较小版本的trie。

    到目前为止,我的想法都是memcached的,将trie转换成一个接受查询并返回所需数据的Web服务。

    我要寻找的是一个最省力的途径,在这种情况下,我可以反复更改和重新加载处理代码,同时保持对内存中trie的访问。直接引用树是更好的选择,因为这将需要最少的代码更改,但实际上我正在寻求最小化总体工作。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Michael    14 年前

    你可以尝试使用内置的蟒蛇 reload 方法或 livecoding 项目。

        2
  •  0
  •   John La Rooy    14 年前

    常见的问题是 reload 实例是否始终绑定到类的旧版本。如果不保留旧实例, 再装填 很简单,而且效果很好。