public override void MarkAndSweep(int tid, VMValueManager valueMan) { int tmp = MaSProcess(tid); if (tmp != -2) { VMValue v = valueMan.GetValue(objGuid); if (v != null) v.MarkAndSweep(tmp, valueMan); v = valueMan.GetValue(ftnGuid); if (v != null) v.MarkAndSweep(tmp, valueMan); } }
public override void MarkAndSweep(int tid, VMValueManager valueMan) { int tmp = MaSProcess(tid); if (tmp != -2) { VMValue v = valueMan.GetValue(threadStartGUID); if (v != null) v.MarkAndSweep(tmp, valueMan); } }
public override void MarkAndSweep(int tid, VMValueManager valueMan) { int tmp = MaSProcess(tid); if (tmp != -2) { // check children with tid VMValue v = valueMan.GetValue(arrayInstGuid); if (v != null) v.MarkAndSweep(tmp, valueMan); } }
public override void MarkAndSweep(int tid, VMValueManager valueMan) { int tmp = MaSProcess(tid); if (tmp != -2) { // check children with tid for (int i = 0; i < data.Length; i++) if (data[i] != -1) { VMValue v = valueMan.GetValue(data[i]); v.MarkAndSweep(tmp, valueMan); } } }
public void MarkAndSweep(int threadID, VMValueManager valueMan) { foreach (int i in variables) valueMan.GetValue(i).MarkAndSweep(threadID, valueMan); foreach (int i in arguments) valueMan.GetValue(i).MarkAndSweep(threadID, valueMan); }
public override void MarkAndSweep(int tid, VMValueManager valueMan) { int tmp = MaSProcess(tid); if (tmp != -2) { // check children with tid for (int i = 0; i < fields.Count; i++) { VMValue v = valueMan.GetValue(fields[i]); if (v != null) v.MarkAndSweep(tmp, valueMan); } } }