|
分類:[.NET 全般]
Win7、C#.NET 2015、C#.NET暦1ヶ月、VB.NET暦2年、C暦1年くらいです。
何かしらのフォント、たとえばフォームのフォントを適当に変更するとForm1.Designer.csに
this.Font = new System.Drawing.Font("MS ゴシック", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
というのが自動的にできますよね。 FontはDisposeが必要と聞いたのですが自分でこれをDisposeする必要はありますでしょうか?
業務アプリでフォントを変えたコントロールなんて画面上にごまんとできますし、 それをDisposeしている例を見かけたことがありません。
しかし、先日、画像イメージを作成するリアルタイム制御系のプロジェクトで、 フォントをDisposeしていたのを見かけました。
一応、Dispose、Fontでググったのですが、下記のようにあまり理解できませんでした。 ・アセンブラレベルの話をしておられた → ついていけなかった ・「フォントハンドル」というアンマネージドリソースを解放しなくてはならない → やはり必要?という印象を受けた ・分からなければとりあえずDisposeを呼んでおくべし → デザイナでnewされたフォントまでいるのかを疑問に思った
たぶん、普通の業務系の画面上の分はいらないと踏んでおり、 リアルタイム系などシビアな環境で 「重くなる等問題が出たら・出そうならDisposeして様子を見る」くらいに思っているのですが、 なにぶん心配性なもので、ご助言を頂きたく思いました。よろしくお願いいたします。
|