FIX: 반복적된 로드 및 언로드 Mtxdm.dll 원인 1MB의 가상 메모리 누수

기술 자료 번역 기술 자료 번역
기술 자료: 232351
모두 확대 | 모두 축소

이 페이지에서

현상

가상 메모리에서 1 MB 누수가 로드 및 Mtxdm.dll 루프 내에서 언로드할 때 루프 반복 마다 함께 나타납니다.

이 ODBC 연결 풀링을 사용 하는 반복 된 연결과 연결 끊기 백 엔드 데이터베이스에서 만드는 응용 프로그램 또는 많은 연결 하 고 하는 Oracle 백엔드 연결 끊기 ODBC 응용 프로그램에서 발생할 가능성이 있습니다.

원인

가상 메모리에서 누수 Mtxdm.dll 내 Terminatethread()에 대 한 호출으로 인해.

ODBC 응용 프로그램에서 연결 풀링을 사용 하면 디스펜서 관리자 (Mtxdm.dll) Mtxdm.dll 내에서 시작 되는 작업자 스레드에 의해 처리 되는 연결 풀을 관리할 수 로드 됩니다.

응용 프로그램이 끝날 때 작업자 스레드를 호출 하는 정리 하는 작업자 스레드의 스택이 할당 된 메모리의 1 MB 약속 됩니다 TerminateThread(), 죽입니다.

Mtxdm.dll Microsoft Oracle ODBC 드라이버를 로드 하기 때문에이 같은 동작을 반복 해 서 연결 및 Oracle 데이터베이스 서버에 대 한 연결 끊기 때 연결 풀링을 사용 되 고 있는지 여부 볼 수 있습니다.

해결 방법

이 문제를 해결 하려면 Windows NT 4.0 또는 개별 소프트웨어 업데이트를 최신 서비스 팩을 구하십시오. 최신 서비스 팩을 구하는 방법에 대 한 하십시오.
개별 소프트웨어 업데이트를 구하는 방법에 대 한 Microsoft 기술 지원 서비스를 문의 하십시오. 지원 비용 정보와 Microsoft 고객 기술 지원부 전화 번호의 전체 목록을 다음 World Wide Web에서 사이트를 참조 하십시오.
서비스 안내서비스 안내요청

Windows NT 서버 또는 워크스테이션 4.0

이 문제를 해결 하려면 Windows NT 4.0 또는 개별 소프트웨어 업데이트를 최신 서비스 팩을 구하십시오. 최신 서비스 팩을 구하는 방법에 대 한 하십시오.
  • Windows 서비스 팩 센터-또는-

  • 152734최신 windows nt 4.0 서비스 팩을 구하는 방법
개별 소프트웨어 업데이트를 구하는 방법에 대 한 Microsoft 기술 지원 서비스를 문의 하십시오. 지원 비용 정보와 Microsoft 고객 기술 지원부 전화 번호의 전체 목록을 다음 World Wide Web에서 사이트를 참조 하십시오.
서비스 안내서비스 안내요청

Windows NT Server 4.0 터미널 서버 버전

이 문제를 해결 하려면 Windows NT Server 4.0, Terminal Server 버전이 용 최신 서비스 팩을 구하십시오. 자세한 내용은 문서를 보려면 다음 문서 번호를 클릭에 Microsoft 기술 자료를 참조 하십시오.
152734 Windows NT 4.0 최신 서비스 팩을 구하는 방법

현재 상태

Microsoft는이 문서의 시작 부분에 나열 된 제품에서 문제가 있음을 확인 했습니다. 이 문제는 Windows NT 서버 버전 4.0, 터미널 서버 Edition 서비스 팩 6에서 처음 수정 되었습니다.

자세한 정보

핫픽스 051099a 수동 설치

참고:이 핫픽스를 구하려면 Microsoft 고객 기술 지원부 문의 해야 합니다. 자세한 내용은이 문서의 해결 방법 절을 참조 하십시오.
  1. 닫거나 응용 프로그램이 나 Mtxdm.dll 사용 하는 서비스를 중지 합니다. 이 인터넷 정보 서버 (IIS), Microsoft Transaction Server (MTS)와 Microsoft 분산 트랜잭션 코디네이터 (DTC), ADO 또는 ODBC 응용 프로그램에 포함 될 수 있습니다.
  2. 임시 디렉터리로 핫픽스 (051099a.exe)를 다운로드 하 고 실행 하면 다음 압축을 풉니다.
    • Mmtxdm.dll
    • Readme.txt
  3. 찾고 \Winnt\System32 폴더를 위한 Windows NT 및 Windows 9x 컴퓨터에 대 한 폴더와 같이 있어야 하는 mtxdm.dll의 현재 버전을 이름을 바꿉니다.
  4. Mtxdm.dll 핫픽스 버전의 동일한 위치로 복사 하 고 서비스 및 응용 프로그램을 다시 시작 합니다.

동작을 재현 하는 방법

다음 코드를 사용 하 여 C/c + + 콘솔 응용 프로그램을 만듭니다. 응용 프로그램에 대 한 가상 바이트 보려면 성능 모니터를 사용 하는 동안이 응용 프로그램을 실행 합니다.

참고: Mtxdm.dll, Microsoft Oracle ODBC 드라이버를 로드 하므로이 코드 예제는 Oracle 백엔드 연결 ODBC 데이터 원본 사용 하 고 더 쉽게 보여 문제.
   #include        <windows.h>
   #include        <stdio.h>
   #include        <sql.h>
   #include        <sqlext.h>
   #include        <assert.h>

   #define CK_RT(x) if( x != SQL_SUCCESS && x != SQL_SUCCESS_WITH_INFO)    assert(0)

   void main(){
       HENV        henv;
       HDBC        hdbc;
       RETCODE     rc = SQL_SUCCESS;
       char        *dsnStr="DSN=OracleServer;UID=scott;pwd=tiger;";
       short       rtnLen = 0;
       UCHAR       rtnDSN[999] = "";
       int         i,x;


       for (i=0; i < 100; i++)
   	{
               rc = SQLAllocEnv(&henv);
               CK_RT(rc);
               rc = SQLAllocConnect(henv, &hdbc);
               CK_RT(rc);
               rc = SQLDriverConnect(hdbc,
                         NULL,
                         (unsigned char *)dsnStr,
                         strlen(dsnStr),
                         rtnDSN,
                         255,
                         &rtnLen,
                         SQL_DRIVER_NOPROMPT);

               CK_RT(rc);
               SQLDisconnect(hdbc);
               SQLFreeConnect(hdbc);
               SQLFreeEnv(henv);
	   }
   }
				

속성

기술 자료: 232351 - 마지막 검토: 2012년 6월 13일 수요일 - 수정: 3.0
키워드:?
kbqfe kbhotfixserver kbbug kbfix kbmdac210fix kbmts200fix kbsdkodbc351fix kbvirtualmem kbmt KB232351 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
이 문서의 영문 버전 보기:232351

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com