я выполняю работу, которая выглядит так
$myjob =
{
# regerate some $data
return $data
}
Я начинаю и получаю свою работу следующим образом:
Start-Job -ScriptBlock $myjob -Name "job1"
Wait-Job -Name "job1"
$result = Receive-Job -Job "job1"
Теперь я хочу, чтобы мой $result
содержал ТОЛЬКО $data
, который был возвращен. Однако при проверке $result
помимо $data я вижу гораздо больше информации, которую я не хочу включать в свой массив $data
. Перепутанные данные начинаются примерно так:
(Возвращенные данные:)
State : Running
HasMoreData : True
StatusMessage :
Location : localhost
Command : # regerate some $data
return $data
JobStateInfo : Running
Finished : System.Threading.ManualResetEvent
InstanceId : f7c63b33-d270-4fa8-8042-111edf9d86a6
Id : 270
Name : job1
ChildJobs : {Job271}
PSBeginTime : 03.12.2012 14:06:26
PSEndTime :
PSJobTypeName : BackgroundJob
Output : {}
Error : {}
Progress : {}
Verbose : {}
Debug : {}
Warning : {}
это повторяется снова и снова, как 20 раз. После этого мой настоящий $data
указан. Однако: итерация по массиву $result
таким образом невозможна. Что я могу сделать?