2

我使用 \l 命令加载(映射)了一个分区数据库。如何取消映射数据库?出于多种原因,这可能很有用,例如加载具有相同名称的不同数据库或释放一些系统内存。

4

3 回答 3

5

没有命令可以执行此操作。您可以手动删除映射数据库时创建的所有变量。所以删除 sym、date(如果您的数据库包含日期分区表)和所有已加载的表。

/ delete sym, date, quote and trade from the default namespace
delete sym, date, quote, trade from `.

/ or if you want to delete everything in the default namespace
delete from `.

完成此操作后,您可以调用 .Q.gc[] - 将内存返回给操作系统。不漂亮,但我认为这是唯一的方法。

于 2013-05-22T02:17:20.313 回答
2

您可以Q.gc[]调用垃圾收集器

于 2013-05-21T14:07:19.073 回答
1

\l 不会显着增加 q 的内存使用量。它是您创建的变量和您运行的计算,它们会消耗内存。正如mnestor所说

从`中删除。.Q.gc[]

应该可以解决您的名称冲突和内存管理问题。为避免删除可能需要的内容,只需将其移动到另一个命名空间即可。例如 .n.somethinguseful

于 2013-05-22T05:46:05.313 回答