回答編集履歴

1

読み込みを非同期で実行

2020/03/03 00:43

投稿

KOZ6.0
KOZ6.0

スコア2628

test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  .FileName = "winrs"
14
14
 
15
- .Arguments = "-r:(サーバー名) dir d:\"
15
+ .Arguments = "-r:(サーバー名) dir c:\windows\system32"
16
16
 
17
17
  .RedirectStandardOutput = True
18
18
 
@@ -22,9 +22,13 @@
22
22
 
23
23
  p.Start()
24
24
 
25
+ Dim tsk As Task(Of String) = p.StandardOutput.ReadToEndAsync()
26
+
25
27
  p.WaitForExit()
26
28
 
29
+ tsk.Wait()
30
+
27
- Console.WriteLine(p.StandardOutput.ReadToEnd())
31
+ Console.WriteLine(tsk.Result)
28
32
 
29
33
  End Using
30
34
 
@@ -33,3 +37,5 @@
33
37
  End Sub
34
38
 
35
39
  ```
40
+
41
+ 結果が大きくなるとハングするので読み込みは非同期実行したほうがいいようです。