[過去ログ] ふらっと C#,C♯,C#(初心者用) Part160 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
960: (ワッチョイ e5c7-a1aX) 02/18(火)09:02 ID:j/Ngy8Tp0(1/2) AAS
Winformsなんだけど
非同期の初期化処理をawaitで呼び出したい時ってコンストラクタasyncにできないけどどうするのがベスト?
FormLoadでやる
Formを返すCreateForm()的なものを作る
なんかモヤっとするんだけど他にいい方法あったら教えてください
961: (ラクッペペ MMcb-4Fd/) 02/18(火)09:19 ID:mekUXLb1M(1) AAS
UI的にはとりあえず画面出して頑張ってまーす表示でもしたほうがいいんじゃね?
何分かかるのかしらんけど
962: (ワッチョイ edd7-cd+Z) 02/18(火)11:03 ID:WqZtGUNA0(1/2) AAS
コンストラクタに、非同期にしなきゃいけないような処理時間の読めない処理書いたらあかん
963(1): (ワッチョイ edd7-cd+Z) 02/18(火)11:03 ID:WqZtGUNA0(2/2) AAS
フォームのコンストラクタに、だった
964: (ワッチョイ e535-a1aX) 02/18(火)13:35 ID:j/Ngy8Tp0(2/2) AAS
>>963
使いたい外部コントロールの初期化処理が非同期しかないのでどうしようもないのですよ
965: (ササクッテロル Spe1-oe3m) 02/18(火)13:40 ID:EOZTpUGhp(1) AAS
初期化処理じゃ無くて、新たにイニシャル処理を書いて、適当なタイミングで非同期待ちすりゃいいんだよ
966: (ワッチョイ b522-nwfw) 02/18(火)18:42 ID:lFymebEC0(1/2) AAS
Loadedイベントなりで遅延初期化すればいいだけ
async voidでawaitしてエラーハンドリングは中で行う
967: (ワッチョイ b522-nwfw) 02/18(火)18:43 ID:lFymebEC0(2/2) AAS
コンストラクタに副作用のある操作を書くのはNG
テストもしづらくなる
968: (オイコラミネオ MM69-cd+Z) 02/19(水)11:30 ID:WA7OixNvM(1/7) AAS
async awaitはただのシンタックスシュガーなのでTaskそのまんま使ってwaitしたらよいけど
対象が外部コントロールなのはお作法的にはよくないね
969: (ワッチョイ edd7-cd+Z) 02/19(水)11:46 ID:w6OGH7sR0(1) AAS
そもそもコントロールの初期化を全部コンストラクタでやらなきゃいけないわけじゃないしな
970(1): (ワッチョイ e5d0-a1aX) 02/19(水)12:17 ID:3B96FmgC0(1) AAS
イベントとかでやらない限りは結局どこでやっても呼び出し元を遡ってコンストラクタまでasyncが連鎖しない?
971: (ワッチョイ b522-nwfw) 02/19(水)12:20 ID:DrShOcOZ0(1/7) AAS
>>970
イベントハンドラではasync void使ってやればいいんだぞ
ただエラーハンドリングはその中で行う
972: (ワンミングク MMab-p2B5) 02/19(水)12:47 ID:sDswMLTyM(1) AAS
自分はCreateFormでもモヤッとしないな
973: (ワッチョイ 1b7b-iI+e) 02/19(水)14:32 ID:mGrw3aeq0(1) AAS
awaitは「あっ待って」で覚えた
オススメ
974(1): (ササクッテロル Spe1-oe3m) 02/19(水)14:35 ID:WpIlRpZyp(1) AAS
せっかくのタスク化を同期待ちしちまったら旨みが無いよなぁ
975: (ワッチョイ 8368-3xrs) 02/19(水)15:09 ID:ttPeeOLl0(1) AAS
UIが固まらないってメリットはある
976: (オイコラミネオ MM69-cd+Z) 02/19(水)17:48 ID:WA7OixNvM(2/7) AAS
初期化が終わってないのに使えても困ると思うよ
977: (ワッチョイ b522-nwfw) 02/19(水)18:31 ID:DrShOcOZ0(2/7) AAS
>>974
awaitは同期待ちじゃないけど?
978(1): (オイコラミネオ MM69-cd+Z) 02/19(水)18:33 ID:WA7OixNvM(3/7) AAS
TaskをWaitすることでしょ?
979: (ワッチョイ cb10-cd+Z) 02/19(水)19:52 ID:U6FgMrZU0(1/2) AAS
アホは黙ってドキュメント読みながら勉強してろ
上下前次1-新書関写板覧索設栞歴
あと 23 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.010s