アプリケーションのステータスを表示するためにWindowsフォームアプリケーションでラベルを使用することは許可/推奨されていませんか?
最初は賢明なアイデアだと思っていましたが、今では表示されないログがたくさんあり、Label.Textの変更にtry/catchを入れないとクラッシュすることがよくあります。これが私が使っている関数です。
private void Echo(string p)
{
lock (m_syncObject)
{
try
{
InfoBox.Text = p.ToString();
}
catch { }
}
}
ご覧のとおり、同じリソースへの複数のアクセスにロックを追加しました。なぜ私が頻繁に「キャッチ」に終わるのか誰かが説明できますか?