public static void BeginLoadOperation () { Interlocked.Increment (ref loading); LoadOperation op = (LoadOperation) Thread.GetData (loadControlSlot); if (op == null) { op = new LoadOperation (); Thread.SetData (loadControlSlot, op); } op.LoadingCount++; }
public static void EndLoadOperation() { Interlocked.Decrement(ref loading); LoadOperation op = (LoadOperation)Thread.GetData(loadControlSlot); if (op != null && --op.LoadingCount == 0) { Thread.SetData(loadControlSlot, null); op.End(); } }
public static void BeginLoadOperation() { Interlocked.Increment(ref loading); LoadOperation op = (LoadOperation)Thread.GetData(loadControlSlot); if (op == null) { op = new LoadOperation(); Thread.SetData(loadControlSlot, op); } op.LoadingCount++; }
public static void LoadControl(ILoadController rc) { if (loading == 0) { return; } LoadOperation op = (LoadOperation)Thread.GetData(loadControlSlot); if (op != null) { op.Add(rc); } }