Search Issue Tracker
Active
Under Consideration for 2022.3.X
Votes
0
Found in
2022.3.59f1
Issue ID
UUM-98083
Regression
No
[IL2CPP-GarbageCollector] Changing GCMode might permanently disable GC in a multithreaded context
Reproduction steps:
1. Open the attached “TestGCMode.zip” project
2. Make sure the “Architecture” is set to “Apple silicon“ and “Development Build” checkbox is enabled in the Build Settings (File > Build Settings)
3. Build And Run the project
4. Press the buttons in this order “DONT GC TEST” > “Disabled” > “Enabled”
5. Observe the two text numbers below the buttons (the top is used heap memory and the bottom is the reserved heap memory).
6. Repeat steps 4 and 5 until the repro occurs
Expected result: GCMode will not disable GC permanently, garbage collection works as expected
Actual result: The numbers below the buttons will not go down at all after waiting for a while, GCMode will disable GC permanently because of another thread temporarily configuring the GC state
Reproducible with: 2022.3.59f1 (Custom build)
Reproducible on: M1 Max MacOS 15.1.1
Not reproducible on: No other environment tested
Note:
- Even if you try to click on the button GC.Collect, both numbers will not go down. This means that the GC has been disabled permanently
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- EditorGUILayout.PropertyField foldout icon inside Vertical Layout Group has an incorrect indent when used with OnInspectorGUI()
- [Android] [iOS] "NullReferenceException: Object reference not set to an instance of an object" throws when entering the Play Mode/opening the application
- The Player freezes on load when building Web platform
- Animator "Conditions" tab breaks when the only Parameter is deleted and another one is created
- "Shader error in 'Universal Render Pipeline/Lit': maximum ps_5_0 sampler register index (16) exceeded" error thrown after a build is completed when the "LOD Cross Fade" parameter is enabled
Add comment