想问一下,在Python 环境下连接dolphindb时,调用toDF函数会自动释放内存吗,一下两种写法在内存使用上是否有区别?
1.
t = trade.select(cols).where()
df = t.toDF()
2.
df = trade.select(cols).where().toDF()
想问一下,在Python 环境下连接dolphindb时,调用toDF函数会自动释放内存吗,一下两种写法在内存使用上是否有区别?
1.
t = trade.select(cols).where()
df = t.toDF()
2.
df = trade.select(cols).where().toDF()
5 回答3.2k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
1 回答2.9k 阅读✓ 已解决
1 回答2k 阅读✓ 已解决
3 回答2.3k 阅读
在trade.select(cols).where().toDF()中,toDF返回的是一个pandas DataFrame,而select和where都是中间计算,执行完之后,只要不将它赋值给一个变量,就会自动释放。
而在t = trade.select(cols).where() df = t.toDF() 中, t会保留在内存中,只有当t的引用计数变成0的时候,比如将另一个值赋给t,内存才会自动释放。