質問するログイン新規登録

質問編集履歴

6

誤字

2021/02/08 14:27

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -102,6 +102,6 @@
102
102
  End Function
103
103
  )
104
104
  Await t2
105
- Me.Output &= t2.Result
105
+ Me.Output &= "fuga"
106
106
  End Sub
107
107
  ```

5

追記

2021/02/08 14:27

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -80,4 +80,28 @@
80
80
  ```
81
81
  - そもそも、これで非同期処理が書けているのかが疑問。また参考にしたサイトによると、「UIスレッド以外でセットさせると例外が発生する」とのことだが、発生しないのが謎(コマンドからの起動がおかしい?)
82
82
  一応、別スレッド側で値を返して、本スレッドでセットさせるロジックも書いてみたが、やはりセットされない。
83
- (そもそも本スレッドでセットしたら、非同期にならないんじゃないかとも思う)
83
+ (そもそも本スレッドでセットしたら、非同期にならないんじゃないかとも思う)
84
+
85
+ # 追記
86
+ 考えが逆だったかも・・・
87
+ 下のように書いたら、逐次反映できてた
88
+ ```
89
+ Private Async Sub MyCommandExecute(ByVal para As Object)
90
+ Dim t As Task(Of String) = Task.Run(
91
+ Function()
92
+ Threading.Thread.Sleep(1000)
93
+ End Function
94
+ )
95
+ Await t
96
+ Me.Output &= "hoge"
97
+
98
+ Threading.Thread.Sleep(1000)
99
+ Dim t2 As Task(Of String) = Task.Run(
100
+ Function()
101
+ Threading.Thread.Sleep(1000)
102
+ End Function
103
+ )
104
+ Await t2
105
+ Me.Output &= t2.Result
106
+ End Sub
107
+ ```

4

誤字

2021/02/08 14:27

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -78,6 +78,6 @@
78
78
  Me.Output &= t2.Result
79
79
  End Sub
80
80
  ```
81
- - そもそも、これで非同期処理が書けているのかが疑問。また参考にしたサイトによると、「UI以外セットさせると例外が発生する」とのことだが、発生しないのが謎(コマンドからの起動がおかしい?)
81
+ - そもそも、これで非同期処理が書けているのかが疑問。また参考にしたサイトによると、「UIスレッド以外セットさせると例外が発生する」とのことだが、発生しないのが謎(コマンドからの起動がおかしい?)
82
82
  一応、別スレッド側で値を返して、本スレッドでセットさせるロジックも書いてみたが、やはりセットされない。
83
83
  (そもそも本スレッドでセットしたら、非同期にならないんじゃないかとも思う)

3

誤字

2021/02/08 11:15

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -65,7 +65,7 @@
65
65
  )
66
66
  Await t
67
67
  Threading.Thread.Sleep(1000)
68
- Data.System.Output.OutputText &= t.Result
68
+ Me.Output &= t.Result
69
69
 
70
70
  Threading.Thread.Sleep(1000)
71
71
  Dim t2 As Task(Of String) = Task.Run(
@@ -75,7 +75,7 @@
75
75
  End Function
76
76
  )
77
77
  Await t2
78
- Data.System.Output.OutputText &= t2.Result
78
+ Me.Output &= t2.Result
79
79
  End Sub
80
80
  ```
81
81
  - そもそも、これで非同期処理が書けているのかが疑問。また参考にしたサイトによると、「UI以外にセットさせると例外が発生する」とのことだが、発生しないのが謎(コマンドからの起動がおかしい?)

2

誤字

2021/02/08 10:31

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -59,7 +59,7 @@
59
59
  Private Async Sub MyCommandExecute(ByVal para As Object)
60
60
  Dim t As Task(Of String) = Task.Run(
61
61
  Function()
62
- Data.System.Output.OutputText &= "hoge"
62
+ Me.Output &= "hoge"
63
63
  Return "hoge"
64
64
  End Function
65
65
  )
@@ -70,7 +70,7 @@
70
70
  Threading.Thread.Sleep(1000)
71
71
  Dim t2 As Task(Of String) = Task.Run(
72
72
  Function()
73
- Data.System.Output.OutputText &= "fuga"
73
+ Me.Output &= "fuga"
74
74
  Return "fuga"
75
75
  End Function
76
76
  )

1

追記

2021/02/08 10:30

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -79,4 +79,5 @@
79
79
  End Sub
80
80
  ```
81
81
  - そもそも、これで非同期処理が書けているのかが疑問。また参考にしたサイトによると、「UI以外にセットさせると例外が発生する」とのことだが、発生しないのが謎(コマンドからの起動がおかしい?)
82
- 一応、別スレッド側で値を返して、本スレッドでセットさせるロジックも書いてみたが、やはりセットされない。
82
+ 一応、別スレッド側で値を返して、本スレッドでセットさせるロジックも書いてみたが、やはりセットされない。
83
+ (そもそも本スレッドでセットしたら、非同期にならないんじゃないかとも思う)