岡三RSSのメモ

例外のメモ。

  • ex {"Null 許容のオブジェクトには値を指定しなければなりません。"} System.Exception {System.InvalidOperationException}


...
これは要は ArgumentNullException が出ているためだが、表示が日本語になってしまい分かりにくい。
そして、ArgumentNullException はしょうもないところで出ていて、それ自体は問題ではないのだが、

            timerSyncObj.Invoke(TowerArgHandler, new object[] { towerArg });

のようにメソッドを呼ぶと、その中で ArgumentNullException などの例外が発生しても、スタックトレースを取得できず、どこで例外が発生したのかが分からなくなるみたいだ。

            timerSyncObj.BeginInvoke(TowerArgHandler, new object[] { towerArg });

のように BeginInvoke を Invoke の代わりに使うと、スタックトレースを取得できる。なぜだろう?