internal void OnProcessExited(Process process)
{
if (process != main_process)
return;
lock (this) {
pending_bpts.Clear ();
reached_main = false;
main_process = null;
foreach (Module module in modules.Values) {
module.UnLoadModule ();
}
foreach (Event e in events.Values.ToArray ()) {
e.OnTargetExited ();
if (!e.IsPersistent)
events.Remove (e.Index);
}
}
}