윈도우2003 heap memory 설정하는 방법

Posted at 2014. 3. 13. 09:38 | Posted in 서버 OS/윈도우

이벤트뷰어에서 COM+ 컴포넌트가 다음과 같은 에러를 발생시킬 때 처리하는 방법

The run-time environment has detected an inconsistency in its internal state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors. Error in d:\nt\com\complus\src\comsvcs\threads\stathread.cpp(284), hr = 80070000: CSTAThread: CoGetApartmentID failed

 

The run-time environment has detected an inconsistency in its internal state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors. Error in d:\nt\com\complus\src\comsvcs\threads\stathread.cpp(271), hr = 80070057: CSTAThread: CoInitializeEx failed

 

The run-time environment has detected an inconsistency in its internal state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors. Error in d:\nt\com\complus\src\comsvcs\threads\stathreadpool.cpp(1230), hr = 8000ffff: CSTAThreadPool: Unable to get bind thread.

 

The run-time environment has detected an inconsistency in its internal state. This indicates a potential instability in the process that could be caused by the custom components running in the COM+ application, the components they make use of, or other factors. Couldn't get ApartmentID from STAPool


위와 같은 에러를 발견한다면 윈도우2003 32비트의 경우 heap 메모리 부족으로 인한 에러 발생일 가능성이 크다.

이럴 경우 레지스트리를 보면

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows

SharedSection =1024,3072,512 이 기본값이다.

이를 해결하기 위해서는

32비트 OS의 경우에는 3072,512를 12288, 1024로 변경가능하며, 

64비트 OS의 경우에는 3072,512를 20480, 1024로 변경해서 해결이 가능하다.

레지스트리를 변경후에는 부팅을 해야 적용이 된다.


//