C# メモ - DrumMidiEditor/DrumMidiEditorApp GitHub Wiki
コード分析
複合代入
// 修正前
if ( measure == null )
{
measure = new Measure();
}
// 修正後
measure ??= new Measure();
Process
// フォルダをエクスプローラーで開く
Process.Start( "EXPLORER.EXE", $"{AppContext.BaseDirectory}" );
Task
Delay
Task.Run で非同期処理を実行し、処理をぐるぐる回すときに
Task.Delay を使用するとCPU使用率が爆上がりした。
なんでかなと思ったら、await が必要なんだな。
private async static void ProcSequence()
{
while ( !_MusicTaskStop )
{
//Thread.Sleep( sleeptime );
Task.Delay( sleeptime ); // この状態だとC待たずにスルーしてしまう。
await Task.Delay( sleeptime ); // awaitをつけて待機する
}
}