이 문서에서는 Microsoft .NET Framework 4.6에서 사용할 수 있는 핫픽스 롤업 3088956 설명합니다. 핫픽스 롤업이 수정하는 문제에 대한 자세한 내용은 "이 핫픽스 롤업이 수정하는 문제" 섹션을 참조하세요.
해결 방법
이제 Microsoft에서 지원되는 핫픽스를 사용할 수 있습니다. 그러나 이 문서에서 설명하는 문제만 수정하기 위한 것입니다. 이 특정 문제가 발생하는 시스템에만 적용합니다.이 문제를 해결하려면 Microsoft 고객 지원 서비스에 문의하여 핫픽스를 가져옵니다. Microsoft 고객 지원 서비스 전화 번호 및 지원 비용에 대한 전체 목록은 다음 Microsoft 웹 사이트를 방문하세요.
http://support.microsoft.com/contactus/?ws=support참고 특별한 경우, Microsoft 지원 Professional에서 특정 업데이트로 인해 문제가 해결될 것으로 판단되는 경우 지원 호출에 대해 일반적으로 발생하는 요금이 취소될 수 있습니다. 일반적인 지원 비용은 문제의 특정 업데이트에 적합하지 않은 추가 지원 질문 및 문제에 적용됩니다.
추가 정보
필수 구성 요소
이 핫픽스를 적용하려면 .NET Framework 4.6이 설치되어 있어야 합니다.
다시 시작 요구 사항
영향을 받는 파일이 있는 경우 이 핫픽스를 적용한 후 컴퓨터를 다시 시작해야 합니다. 이 핫픽스를 적용하기 전에 모든 .NET Framework 기반 애플리케이션을 닫는 것이 좋습니다.
핫픽스 대체 정보
이 핫픽스 패키지는 이전에 릴리스된 핫픽스 패키지를 대체하지 않습니다.
이 핫픽스 롤업이 수정하는 문제
문제 1RyuJit이 사용하지 않도록 설정된 .NET Framework 4.6 플랫폼의 .NET Framework 4.6 또는 AMD64 버전의 32비트 버전에서 실행되는 ASP.NET 웹 사이트가 있는 경우 처리되지 않은 ThreadAbortException으로 인해 w3wp 충돌이 발생할 수 있습니다. 크래시가 발생하면 Windows 이벤트 로그에서 다음 로그를 볼 수 있습니다.
처리되지 않은 예외가 발생하고 프로세스가 종료되었습니다.애플리케이션 ID: [ApplicationID]프로세스 ID: [ProcessID]Exception: System.Threading.ThreadAbortException메시지: 스레드가 중단되었습니다.StackTrace: System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr rootedObjectsPointer)의 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context)에서 IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr rootedObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)
문제 2WCF 라우팅 서비스를 사용하여 WCF 서비스에 연결하는 WCF 클라이언트가 있다고 가정합니다. 최종 서비스에서 FaultException 유형 또는 구성 변경 내용이 아닌 예기치 않은 예외가 발생하는 경우 WCF 라우팅 서비스는 후속 요청을 최종 서비스로 라우팅하지 않을 수 있습니다.이 문제가 발생하면 다음과 같은 예외가 발생합니다.
System.ServiceModel.ProtocolException: 서버 시작 종료로 인해 출력 세션이 자동으로 닫혔기 때문에 이 채널을 사용하여 메시지를 보낼 수 없습니다. DispatchRuntime.AutomaticInputSessionShutdown을 false로 설정하여 자동 닫기를 사용하지 않도록 설정하거나 원격 서버를 사용하여 종료 프로토콜을 수정하는 것이 좋습니다.
스택 추적 정보:at System.ServiceModel.Channels.ServiceChannel.PrepareCall(ProxyOperationRuntime 작업, System.ServiceModel.Channels.SendAsyncResult.Begin()at System.ServiceModel.Channels.ServiceChannel.BeginCall(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, TimeSpan timeout, AsyncCallback 콜백, Object asyncState)의 ProxyRpc& rpc).System.ServiceModel.Channels.ServiceChannelProxy.InvokeBeginService(IMethodCallMessage methodCall, System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData의 System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage 메시지)의 ProxyOperationRuntime 작업 System.ServiceModel.Routing.IRequestReplyRouter.BeginProcessRequest(Message message, AsyncCallback 콜백, 개체 상태)System.ServiceModel.Routing.ClientFactory.RequestReplyClient.OnBeginOperation(Message message, AsyncCallback 콜백, 개체 상태)의 System.ServiceModel.Routing.ClientFactory.RoutingClientBase'1.OperationAsyncResult.CallOperation()의 System.ServiceModel.Routing.ClientFactory.RoutingClientBase'1.OperationAsyncResult.. ctor(RoutingClientBase'1 parent, System.ServiceModel.Routing.ClientFactory.RoutingClientBase'1.BeginOperation(Message message, Transaction transaction, AsyncCallback 콜백, 개체 상태)의 System.ServiceModel.Routing.ProcessRequestAsyncResult'1.StartProcessing()에서 System.ServiceModel.Routing.ProcessRequestAsyncResult'1..ctor(RoutingService service, Message message, AsyncCallback 콜백, System.ServiceModel.Routing.RoutingService.BeginProcessRequest[TContract](Message message, AsyncCallback 콜백, 개체 상태)의 System.ServiceModel.Routing.Routing.System.ServiceModel.Routing.IRequestReplyRouter.BeginProcessRequest(Message, AsyncCallback 콜백, 개체 상태)at AsyncInvokeBeginBeginProcessRequest(Object , Object[] , AsyncCallback , Object )at System.ServiceModel.Dispatcher.AsyncMethodInvoker.InvokeBegin(Object instance, Object[] inputs, AsyncCallback callback, Object state) 문제 3새 Georgian Lari 기호를 지원하기 위한 업데이트입니다. 조지아 국가는 라리에 대한 새로운 통화 기호를 도입했지만 통화 이름은 변경되지 않습니다. 새 통화 기호도 유니코드 표준에 추가되었습니다. 이 업데이트는 시스템 로캘 설정에 따라 .NET Framework 올바른 통화 기호가 표시되는지 확인합니다.문제 4Parallel.ForEach 호출 중에 Gen2 컬렉션이 발생하는 경우 Visual Studio 2015 또는 Visual Studio 없이 .NET Framework 4.6을 설치한 후 긴 중단이 발생할 수 있습니다.해결 방법:이 업데이트는 이 문제로 인한 시스템 중지를 해결하여 가비지 수집기를 업데이트합니다.문제 5.NET Framework 4.6을 설치한 후 DateTime.Parse 및 Date.TryParse 메서드가 제대로 작동하지 않습니다. 이 문제는 다음 문화권 설정에서 발생할 수 있습니다.
-
fi-FI
-
nb-NO
-
nb-SJ
-
sr-Cyrl-XK
-
sr-Latn-ME
-
sr-Latn-RS
-
sr-Latn-XK
해결 방법:이 업데이트를 사용하면 DateTime.Parse 및 Date.TryParse가 동일한 날짜 및 시간 구분 기호를 사용하는 문화권에서 올바르게 작동할 수 있습니다.문제 6.NET Framework 4.6을 설치한 후 .NET Framework 4.6은 RyuJIT라는 새로운 64비트 컴파일러를 사용합니다. 경우에 따라 새 컴파일러가 예측할 수 없는 동작 또는 충돌을 일으키는 잘못된 코드를 생성합니다. 해결 방법:이 업데이트는 RyuJIT 컴파일러의 많은 문제를 해결합니다. 이 업데이트를 설치한 후에도 애플리케이션이 여전히 예측 불가능하게 동작하는 경우 자세한 문제 해결 지침을 참조하세요.추가 단계: 링크의 문제 해결 단계에 따라 RyuJIT가 문제에 관여할 수 있다고 판단되면 http://connect.microsoft.com 문제를 기록하세요. 보고서에 가능한 한 많은 세부 정보를 포함하고 문제를 재현하기 위한 코드도 포함합니다.