Fixes when accessing fgn_maxgen_percent (dotnet/coreclr#25650)
* Fixes when accessing fgn_maxgen_percent
PR dotnet/coreclr#25350 changed `fgn_maxgen_percent` to be a per-heap property when
`MULTIPLE_HEAPS` is set. A few uses need to be updated.
* In `full_gc_wait`, must re-read `fgn_maxgen_percent` before the
second test of `maxgen_percent == 0`.
(Otherwise the second test is statically unreachable.)
* In RegisterForFullGCNotification, must set `fgn_maxgen_percent` when
`MULTIPLE_HEAPS` is not set
* In CancelFullGCNotification, must set `fgn_maxgen_percent` for each
heap separately when `MULTIPLE_HEAPS` is set.
Fix dotnet/corefxdotnet/coreclr#39374
* Avoid duplicate code when getting fgn_maxgen_percent twice in full_gc_wait
Commit migrated from https://github.com/dotnet/coreclr/commit/
4b5ae70e341bad3c9f25d33cfee58d2bb93d3db7