There are 2 calls to .Target per loop - those won’t be inlined so if you could do the lookup once you can cut the locks taken in half. Also not re-checking the result of .Target on line 4464 is a race condition - a GC could occur between that line the check on 4444.
Prioritise and Follow this issue
Have a workaround or additional info about this issue?