C#_時間を指定して処理を一時停止する

結論から。

メソッドに async をつけ、その中で await Task.Delay を使う。

 

ex )
データ  ( Bitmap 型 ) を pictureBox に順次表示。

    private async void test()
    {
        pictureBox.Image = hoge[0];
        await Task.Delay(1000);
        pictureBox.Image = hoge[1];
    }

System.Threading.Thread.Sleep(1000);
を使うと、hoge[0] は表示されずに最後のデータだけ表示された。
何故か不明。
GUI スレッドでスリープさせているため Form が無効になるがこれが関係する?

 

こちらから。
https://qiita.com/TsuyoshiUshio@github/items/e9404651c9e48f1b8443
http://posnum.hatenablog.com/entry/2014/10/28/222436

 

以上。