Exemplo n.º 1
0
 public override void MarkAndSweep(int tid, VMValueManager valueMan)
 {
     valueMan.GetValue(srcValue).MarkAndSweep(tid, valueMan);
     valueMan.GetValue(destValue).MarkAndSweep(tid, valueMan);
 }
Exemplo n.º 2
0
 // Mark and sweep for garbage collection and thread locality check
 public abstract void MarkAndSweep(int tid, VMValueManager valueMan);
Exemplo n.º 3
0
 public override bool Escape(VMValueManager valueMan)
 {
     return valueMan.GetValue(srcValue).Escape || valueMan.GetValue(destValue).Escape;
 }
Exemplo n.º 4
0
 /// <summary>
 /// Returns whether a DelayedAction accesses some escaping data
 /// Whenever we are unsure, returning true is always safe and correct
 /// </summary>
 /// <returns></returns> 
 public virtual bool Escape(VMValueManager valueMan)
 {
     return true;
 }
Exemplo n.º 5
0
 public override void MarkAndSweep(int tid, VMValueManager valueMan)
 {
     // donothing, this is a dummy delayed action
 }
Exemplo n.º 6
0
 public override bool Escape(VMValueManager valueMan)
 {
     // TODO: check this, it may be false which makes analysis running faster
     return true;
 }
Exemplo n.º 7
0
 public override void MarkAndSweep(int tid, VMValueManager valueMan)
 {
     valueMan.GetValue(obj).MarkAndSweep(tid, valueMan);
 }
Exemplo n.º 8
0
 public override bool Escape(VMValueManager valueMan)
 {
     return valueMan.GetValue(obj).Escape;
 }