Powershell: 应该删除对$ MaximumFunctionCount和其他限制的支持

创建于 2016-09-10  ·  3评论  ·  资料来源: PowerShell/PowerShell

我们应该考虑删除以下变量:

PS> gv Max*Count

Name                           Value
----                           -----
MaximumAliasCount              4096
MaximumDriveCount              4096
MaximumErrorCount              256
MaximumFunctionCount           4096
MaximumHistoryCount            4096
MaximumVariableCount           4096

它们并不能真正保护用户免受任何伤害(很容易以其他多种方式消耗内存),并且它们会阻止某些有效的使用,例如,如果在InitialSessionState添加> 4096个函数,则额外的功能将保持静默状态被忽略-在运行空间打开之前,没有增加该限制的好方法。

Issue-Bug WG-Engine WG-Language

最有用的评论

这是一个非常好的主意。

我对删除MaximumErrorCount有疑问。 这是非常不同的
从其他方面来看,有些限制是有道理的。 可能有很多错误
一些案例。 这对于长时间运行的进程是不利的。 开发人员必须保留
请记住,内存可能会由于错误和对此的照顾而泄漏。 为什么?

此外,当确实需要收集和分析错误时,可以使用
特定命令的-ErrorVariable参数比使用
$Error也可能包含噪音错误。 -ErrorVariable是无限的。

所有3条评论

同意我宁愿看到一个合并的“报告”命令,告诉我我每个人有多少(如果它可以显示内存占用情况,那就更好了)。 万一我需要调试一种情况,其中某件事占用了过多的内存。 但是即使没有这些,是的,我也可以删除这些内容。

这是一个非常好的主意。

我对删除MaximumErrorCount有疑问。 这是非常不同的
从其他方面来看,有些限制是有道理的。 可能有很多错误
一些案例。 这对于长时间运行的进程是不利的。 开发人员必须保留
请记住,内存可能会由于错误和对此的照顾而泄漏。 为什么?

此外,当确实需要收集和分析错误时,可以使用
特定命令的-ErrorVariable参数比使用
$Error也可能包含噪音错误。 -ErrorVariable是无限的。

删除max值变量并不意味着错误收集仍不能限制为最大大小256。在这种情况下,我想问题是- does anybody ever change (increase) that value吗? 我不能说我在使用PowerShell的10年以上中就做到了。

此页面是否有帮助?
0 / 5 - 0 等级