Ash*_*Ash 6 python dictionary shared-memory multiprocessing
我使用Python的多处理包实现了一个生产者多用户模式.消费者应该将结果放在字典中.这本词典的关键是单词,值是大Scipy稀疏矩阵.每个消费者将其看到的每个单词的值添加到共享字典中该单词的主向量.
我使用Manager.dict()来实现这个共享字典,但速度非常慢.每个进程的cpu-utilization约为15%,它比单个进程好一点.每个使用者从共享字典中提取项目,将稀疏矩阵添加到该项目的值并更新共享字典中的项目.
有没有更有效的解决方案?
import memcache
memc = memcache.Client(['127.0.0.1:11211'], debug=1);
memc.set('top10candytypes', {1 : 2, "3" : [4,5,6]})
bestCandy = memc.get('top10candytypes')
print(bestCandy)
Run Code Online (Sandbox Code Playgroud)
我不是内存缓存方面的专家,因为我自己才刚刚开始使用它。但是,如果您有多个线程需要访问相同的数据,或者您只是需要在不耗尽内存的情况下有效地存储内容,那么它会非常方便。
| 归档时间: |
|
| 查看次数: |
679 次 |
| 最近记录: |