방법: 버퍼링된 그래픽 수동 관리How to: Manually Manage Buffered Graphics

고급 이중 버퍼링 시나리오의 경우 .NET Framework 클래스를 사용 하 여 사용자 고유의 더블 버퍼링 논리를 구현할 수 있습니다.For more advanced double buffering scenarios, you can use the .NET Framework classes to implement your own double-buffering logic. 개별 그래픽 버퍼 BufferedGraphicsContext 를 할당 하 고 관리 하는 클래스는 클래스입니다.The class responsible for allocating and managing individual graphics buffers is the BufferedGraphicsContext class. 모든 응용 프로그램에는 해당 BufferedGraphicsContext 응용 프로그램에 대 한 모든 기본 이중 버퍼링을 관리 하는 고유한 기본값이 있습니다.Every application has its own default BufferedGraphicsContext that manages all of the default double buffering for that application. 을 호출 Current하 여이 인스턴스에 대 한 참조를 검색할 수 있습니다.You can retrieve a reference to this instance by calling the Current.

기본 System.drawing.bufferedgraphicscontext>에 대 한 참조를 가져오려면To obtain a reference to the default BufferedGraphicsContext

  • 다음 코드 예제와 같이 속성을설정합니다.CurrentSet the Current property, as shown in the following code example.

    BufferedGraphicsContext myContext;
    myContext = BufferedGraphicsManager.Current;
    
    Dim myContext As BufferedGraphicsContext
    myContext = BufferedGraphicsManager.Current
    
    

    참고

    클래스에서 BufferedGraphicsContext Dispose 받는참조에대해메서드를호출할필요가없습니다BufferedGraphicsManager .You do not need to call the Dispose method on the BufferedGraphicsContext reference that you receive from the BufferedGraphicsManager class. BufferedGraphicsManager 기본BufferedGraphicsContext 인스턴스에 대 한 모든 메모리 할당과 배포를 처리 합니다.The BufferedGraphicsManager handles all of the memory allocation and distribution for default BufferedGraphicsContext instances.

    애니메이션 등 BufferedGraphicsContext BufferedGraphicsManager의 그래픽을 많이 사용 하는 응용 프로그램의 경우에서 제공하는대신전용를사용하여성능을향상시킬수있습니다.BufferedGraphicsContextFor graphically intensive applications such as animation, you can sometimes improve performance by using a dedicated BufferedGraphicsContext instead of the BufferedGraphicsContext provided by the BufferedGraphicsManager. 이를 통해 응용 프로그램에서 사용 하는 메모리는 증가 하지만 응용 프로그램에 연결 된 다른 버퍼링 된 모든 그래픽을 관리 하는 성능 오버 헤드를 발생 시 키 지 않고 그래픽 버퍼를 개별적으로 만들고 관리할 수 있습니다.This enables you to create and manage graphics buffers individually, without incurring the performance overhead of managing all the other buffered graphics associated with your application, though the memory consumed by the application will be greater.

전용 System.drawing.bufferedgraphicscontext>를 만들려면To create a dedicated BufferedGraphicsContext

  • 다음 코드 예제와 같이 BufferedGraphicsContext 클래스의 새 인스턴스를 선언 하 고 만듭니다.Declare and create a new instance of the BufferedGraphicsContext class, as shown in the following code example.

    BufferedGraphicsContext myContext;
    myContext = new BufferedGraphicsContext();
    // Insert code to create graphics here.
    // On a non-default BufferedGraphicsContext instance, you should always 
    // call Dispose when finished.
    myContext.Dispose();
    
    Dim myContext As BufferedGraphicsContext
    myContext = New BufferedGraphicsContext
    ' Insert code to create graphics here.
    ' On a nondefault BufferedGraphicsContext instance, you should always 
    ' call Dispose when finished.
    myContext.Dispose()
    
    

참고자료See also