.net - PowerShell 中的进程、实例和运行空间
问题描述
- 方法在“当前或新的运行空间”中创建[Powershell]::create()
一个新的 PowerShell-“实例”。
有人可以解释术语process,instance,runspace和(也许是thread)在这方面是如何相互关联的。如果可能的话,用外行的话?
解决方案
您拥有的术语不可互换,也不做同样的事情。
进程是运行指令集的程序。
线程是程序中单次运行的指令。
多线程是指同时运行多条指令。每个都需要一个单独的线程。
Runspace 在同一个 powershell 进程中,但调用了一个新的 powershell 引擎,以便在不干扰当前 powershell 脚本线程的情况下运行其代码。
实例是包含的代码运行。它是一个描述符。
所以这里有一些例子
我可以有一个进程的实例。我可以有一个线程的实例。我可以有一个 Runspance 的实例。
编辑以根据评论扩展答案
“所以在上面发布的示例中([Powershell]::create()),这是线程、进程还是运行空间的实例?”
所以我们有一个 Powershell 应用程序。正在发生的事情是这个应用程序启动了一个运行空间,您的命令将在其中执行并设置一个位置来创建 Powershell 对象。每次打开 powershell 控制台时,您都在启动另一个运行空间。
它创建一个对象,您可以在[Powershell]::create()
其中确定将运行什么以及将在哪个运行空间上运行。如果您不选择运行空间,那么它将为您创建一个。
那么[Powershell] 是什么将运行?(脚本)及其运行位置(运行空间)
Runspace 是如何运行的?(在 powershell 引擎上)
推荐阅读
- python - KivyMd 屏幕不变
- java - 如何将 X 和 Y 转换为 lat 和 long
- sql - 实施部分付款表
- node.js - 我无法在 jhipster 中构建 webpack prod
- python - 为什么熊猫散点图方法会引发警告?
- amazon-cloudwatch - 带有字符串的 AWS Log Insights 查询包含
- reactjs - 我如何更新商店页面加载第一次反应挂钩?
- ios - 为 Swift 5 自动定义的 pausesLocationUpdatesAutomatically 在哪里?
- amazon-web-services - 在 Mac 上的适用于 Windows 的 Amazon Web Service 模拟器上添加更多存储空间
- javascript - 删除嵌套数组