C # Powershell. Нужно ли разрушать конвейер после каждого выполнения скрипта. - PullRequest
0 голосов
/ 28 мая 2009

Я вижу, что Пример асинхронной рассылки Jean-Paul Mikkers на CodeProject.com разрушает конвейер и воссоздает его после каждого выполнения скрипта. Кто-нибудь знает, есть ли какая-то конкретная причина, почему это сделано таким образом, или каждый раз нужно заново создавать конвейер.

Я пытался выполнить его несколько раз на своем собственном примере, но могли быть эффекты, которые я не вижу только с несколькими 100-1000 выполнениями.

1 Ответ

0 голосов
/ 02 июня 2009

У меня есть код (модульный тест), который создает единое пространство выполнения для создания нескольких конвейеров, ни один из которых не утилизируется, 1 по очереди.

Все это работает без проблем.

Конечно, если конвейер изменяет состояние Runspace (например, добавляет переменную, меняет каталог, загружает оснастку, ...), тогда это может повлиять на результат конвейеров.

Резюме: «Это необходимо?»: Нет. Но вы можете обнаружить, что это дает лучшую / худшую производительность (и ответ на это будет зависеть от версии PSH). Если вы не обнаружите, что создание конвейера приводит к снижению производительности, следуйте тому, что обеспечивает простейший дизайн для вашего приложения.

<ч /> 1 Один для списка дел: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...