BoC.EventAggregator.BaseEvent.PruneAndReturnStrategies C# (CSharp) Method

PruneAndReturnStrategies() private method

Prunes the and return strategies.
private PruneAndReturnStrategies ( ) : List>
return List>
        private List<Action<object[]>> PruneAndReturnStrategies()
        {
            List<Action<object[]>> returnList = new List<Action<object[]>>();

            lock (_subscriptions)
            {
                for (int i = _subscriptions.Count - 1; i >= 0; i--)
                {
                    Action<object[]> subscriptionAction = _subscriptions[i].GetExecutionStrategy();

                    if (subscriptionAction == null)
                    {
                        _subscriptions.RemoveAt(i);
                    }
                    else
                    {
                        returnList.Add(subscriptionAction);
                    }
                }
            }

            return returnList;
        }