PrintTickets
多数の印刷に使用していますが、問題なく印刷されていWPF objects
ます。dllhost.exe
プログラムが大量のメモリを使用し、最終的にマシンがクラッシュするまで上昇するという状況が報告されています。と の作成に絞り込みましPrintTicket
たprintqueue.getprintcapabilitiesasxml()
。これらが呼び出されるたびに、dllhost.exe
毎回のメモリ使用量が 3 MB 以上ジャンプします。可能であればこれを回避する方法、または使用されていることを知った後にそれをクリアする方法があるかどうか、誰か教えてもらえますか?
更新:単純なこのコードでプロジェクトを作成しました。
for (int i = 0; i < 100; i++)
{
using (System.Printing.PrintQueue pQueuePrnt =
new LocalPrintServer().GetPrintQueue("HP LaserJet 9050 PCL 5"))
{
using (MemoryStream printerCapXmlStream = pQueuePrnt.GetPrintCapabilitiesAsXml())
{
Console.WriteLine(printerCapXmlStream.Length);
}
}
}
これにより、約 60 MB がなくなるdllhost.exe
ことはありません。