Hi,

David Stutz wrote:

>
> Where are you seeing synchronous suspension? Could you be more specific
> about what you're seeing that you'd like to understand?
>
>

well it all started after i saw a block of comments in vm/threads.cpp which
mentions about sync and async suspension
as i understand it, the compiler emits calls to JIT_PollGC at safe points
(this calls CommonTripThread which is supposed to belong
to the category of synchronous suspension functions). so i wanted a clear
picture of the interaction happening between SysSuspendForGC and
CommonTripThread.

And also i would be extremely grateful if you could explain about- the
Preemptive mode of the GC
does this mode come into picture only when unmanaged code is executed ?
most of the references in the code indicate that preemptive mode is enabled
when there are calls to the OS / any exceptions occuring etc.. i am not
able to understand this part of the functionality
Is there any relation between this and the macros GCPROTECT_BEGIN and
GCPROTECT_END ? (they seem to push objects onto a newly created frame which
would be updated by the GC if it occurs etc..)

thank you.
regards,
archana

Reply via email to