我想将整个文件存储在tcl变量中。那么请告诉我,Tcl变量的存储容量是多少?
答案 0 :(得分:1)
对于C级别的任何“对象”的大小,Tcl的当前限制为2 GiB(即使在64位系统上,因为用于实体大小的类型中存在旧的API botch)。对于字符串,这意味着您可能需要坚持少于10亿个字符以确保安全(尽管确切的限制将根据您正在做的事情的细节而变化)。对于列表,在32位计算机上,这限制了大约5亿个列表项(提供您永远不会得到列表的字符串表示形式),并且限制是64位计算机的一半;您可以使用嵌套列表解决此问题,因为限制只是基础数组的大小。字典可能会更大,但我不推荐它(并且由于前面提到的API问题,可能无论如何都不能超过20亿条目,尽管看到与嵌套有关的同样适用的评论)。 p>
您还受制于操作系统和机器架构所施加的限制。当然。
如果您正在使用非常大的数据,那么强烈建议您使用Tcl 8.6.1(或更高版本),因为这样可以更好地解决内存分配问题导致的软故障。< / p>