internal void LeaveBottleneck(AmbientBottleneckAccessor ambientBottleneckAccess) { foreach (IAmbientBottleneckExitNotificationSink notificationSink in _notificationSinks) { notificationSink.BottleneckExited(ambientBottleneckAccess); } }
public void BottleneckExited(AmbientBottleneckAccessor bottleneckAccessor) { foreach (IAmbientBottleneckExitNotificationSink notificationSink in _notificationSinks) { notificationSink.BottleneckExited(bottleneckAccessor); } }
public AmbientBottleneckAccessor EnterBottleneck(AmbientBottleneck bottleneck) { AmbientBottleneckAccessor access = new AmbientBottleneckAccessor(this, bottleneck, AmbientClock.Ticks); foreach (IAmbientBottleneckExitNotificationSink notificationSink in _notificationSinks) { IAmbientBottleneckEnterNotificationSink?enterSink = notificationSink as IAmbientBottleneckEnterNotificationSink; enterSink?.BottleneckEntered(access); } return(access); }
void IAmbientBottleneckExitNotificationSink.BottleneckExited(AmbientBottleneckAccessor bottleneckAccessor) { CallContextDistributor.BottleneckExited(bottleneckAccessor); }