次の方法で共有


デバイス コンテキスト キャッシュの表示

システムは、一般的な、親、ウィンドウのデバイス コンテキストに使用するディスプレイ デバイス コンテキストのキャッシュを保持します。 アプリケーションが GetDC または BeginPaint 関数を呼び出すたびに、システムはキャッシュからデバイス コンテキストを取得します。アプリケーションが後で ReleaseDC または EndPaint 関数を呼び出すと、システムは DC をキャッシュに返します。

キャッシュが保持できるデバイス コンテキストの量には、事前に決められた制限はありません。使用可能でない場合は、キャッシュの新しい表示デバイス コンテキストが作成されます。 これを考えると、アプリケーションは一度に 5 つ以上のアクティブなデバイス コンテキストをキャッシュから持つことができます。 ただし、アプリケーションは、使用後も引き続きこれらのデバイス コンテキストをリリースする必要があります。 キャッシュの新しい表示デバイス コンテキストはアプリケーションのヒープ領域に割り当てられるため、デバイス コンテキストの解放に失敗すると、最終的に使用可能なすべてのヒープ領域が消費されます。 システムは、新しいデバイス コンテキストに領域を割り当てることができない場合にエラーを返すことによって、このエラーを示します。 キャッシュに関連しない他の関数でもエラーが返される場合があります。