2023-09-01から1ヶ月間の記事一覧

TaskにConfigureAwait(false)を付けると、それ以降の処理はそれ以前のスレッドとは別のスレッドで行われることになる

C#

やりたいこと Taskでawaitしている個所に.ConfigureAwait(false)を付けると、その後の処理で、アプリが落ちたりすることがある。なんでなのか?調べたい。 わかったこと .ConfigureAwait(false)を付けたときとつけてないときで、処理が行われるスレッドが違…

実行中のプロセス自身のパスをとる

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 実行してるexe自身のフルパス、もしくはそれが保存されてるフォルダのパスを取りたい。 サンプルコード // フォルダ Console.WriteLine(Environment.CurrentDirectory); Console.WriteLin…

Taskを調べてると頻繁に出てくる「コンテキスト」とは何か?

C#

やりたいこと Taskとか非同期処理を調べていると、あちこちに「コンテキスト」「同期コンテキスト」「非同期コンテキスト」という言葉が出てくる。 これが、調べても調べても何のことを言っているのかわからない。 なんとなく、「コンテキスト ≒ スレッド」…

WMIのクラスを全部取る・その中のプロパティ値もできるだけ取る

WMI

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと WMIでなにか値をとりたいなと思ったときに、どのクラスからどんな値が取れるのかがわからないので、いつも出だしで困る。 あまり良いやり方ではないかもしれないが、とりあえずもう全部の…

null許容(null許容値型/null許容参照型)についてのメモ

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと タイトルとは別のしらべものをしているときに、 null許容について知らないことがいろいろわかった気がしたので、理解したかどうかはおいておいて、忘れたくないものを取り急ぎメモ。 別の…

型パラメーターの制約条件(where T : 〇〇)

C#

もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと あるとき、ジェネリクスで、 T型の戻り値をもつメソッドを引数にとって、 引数で受けたメソッドを実行する。 実行したときに例外なく実行出来たら、そのまま引数で受けたメソッドが返した…