Merge pull request #613 from leculver/master
Add known issue for 470006 - GC large object crashespull/616/head
commit
9a1e233aa6
|
@ -0,0 +1,34 @@
|
|||
# Rare crashes can occur when background GC is enabled in applications that allocate and free large objects at a high rate
|
||||
|
||||
## Symptoms
|
||||
|
||||
When background GC is enabled, an application running on .NET Framework 4.7.1 experiences
|
||||
intermittent crashes that did not occur when running on other .NET Framework versions.
|
||||
|
||||
## Cause
|
||||
|
||||
.NET Framework 4.7.1 includes changes that improve background GC performance.
|
||||
Because of these changes, a rare combination of factors can cause the background GC
|
||||
to reclaim a large object while the program is still using it.
|
||||
|
||||
## Impact
|
||||
|
||||
This problem impacts applications that run with the background GC enabled and that also allocate
|
||||
and free large objects at a high rate. As described in the article [Fundamentals of Garbage Collection](https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals#the-managed-heap),
|
||||
a large object is any object that is 85,000 bytes or larger in size.
|
||||
|
||||
This problem is rare, and is more likely to occur when running on the x86 version of the
|
||||
.NET Framework than when running on the x64 version of the 4.7.1 .NET Framework.
|
||||
|
||||
## Workarounds
|
||||
|
||||
The most practical workaround is to disable the background GC by setting the enabled attribute of the [<gcConcurrent> element](https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/gcconcurrent-element) in the
|
||||
<runtime> section of your application configuration file to false.
|
||||
|
||||
The only other workaround is to change the application to allocate and free large objects
|
||||
at a much lower rate.
|
||||
|
||||
## Resolution
|
||||
|
||||
This problem is fixed in [.NET Framework 4.7.2](http://go.microsoft.com/fwlink/?LinkId=863281).
|
||||
|
|
@ -4,6 +4,7 @@
|
|||
This document lists the known issues that you may experience after you install the Microsoft .NET Framework 4.7.1.
|
||||
|
||||
## Product issues for the .NET Framework 4.7.1
|
||||
- [470006 - GC - Rare crashes can occur when background GC is enabled in applications that allocate and free large objects at a high rate](https://github.com/Microsoft/dotnet/blob/master/releases/net471/KnownIssues/470006-GC%20Crashes%20with%20high%20rate%20of%20large%20object%20allocation.md)
|
||||
- [479874 - WPF - Touch Stops Working After Rapid/Prolonged Use Of Popups](https://github.com/Microsoft/dotnet/blob/master/releases/net471/KnownIssues/479874-WPF%20Touch%20Stops%20Working%20After%20Prolonged%20Use%20of%20Popups.md)
|
||||
- [481090 - WPF - Touch generates a NullReferenceException in WispLogic.ProcessInputReport](https://github.com/Microsoft/dotnet/blob/master/releases/net471/KnownIssues/481090-WPF%20Touch%20generates%20NullReferenceException%20in%20ProcessInputReport.md)
|
||||
- [489937 - WPF - Touch/Stylus Generates AccessViolations and Heap Corruption in GetPenEventMultiple](https://github.com/Microsoft/dotnet/blob/master/releases/net471/KnownIssues/489937-WPF%20Touch%20and%20Stylus%20AccessViolation%20in%20GetPenEventMultiple.md)
|
||||
|
|
Loading…
Reference in New Issue