【问题标题】:PowerShell Dot Sourcing at Runtime运行时的 PowerShell 点源
【发布时间】:2016-09-19 18:13:21
【问题描述】:

我有一个非常大的 PowerShell 脚本。为了减少加载时间,我想只加载当前正在调用的脚本部分。

点源脚本是否仍会在运行时加载它?还是等到它到达该函数后再加载另一个脚本?

【问题讨论】:

    标签: powershell


    【解决方案1】:

    很难说出您当前脚本的构成,但我建议您将代码拆分为函数,如果合适的话,可能会用它制作一个模块。最初解析该脚本时,它只是定义函数并且不执行它们,所以它会非常快。

    点源获取您指定的脚本并立即执行它,就好像它在您的原始脚本中的那个位置一样。

    【讨论】:

    • 脚本加载了很多函数(差不多4000行),每个函数加载不同的GUI窗口。第一个是主菜单。我只想加载从主菜单中选择的功能。
    • @CidV 点源可能会有所帮助,只要点线仅在点击菜单选项时才执行。您还可以在其他函数(父函数本地)中定义函数,这可能是另一种方式。
    • 经过进一步测试,似乎根本不是代码量。由于某种原因,它正在加载现在成为问题的 GUI。没多久就加载过去了。 XAML 和 WPF。
    • 经过进一步测试,似乎是在另一个用户帐户下加载 WPF(用户需要以管理员帐户登录才能使用此工具)需要很长时间。
    • @CidV 这更有意义。即使有 4,000 个函数,它也应该或多或少地立即加载。
    猜你喜欢
    • 2019-04-17
    • 1970-01-01
    • 2012-01-21
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 2011-01-06
    • 2013-10-14
    相关资源
    最近更新 更多