public void Call(WindowBase instance)
            {
                var iteration = instance.GetFunctionIterationIndex();

                List <UnityAction <int> > list;

                if (this.items.TryGetValue(iteration, out list) == true)
                {
                    foreach (var item in list)
                    {
                        item.Invoke(iteration);
                    }
                    this.items.Remove(iteration);
                }
            }
            public void Remove(WindowBase instance)
            {
                var iteration = instance.GetFunctionIterationIndex();

                this.items.Remove(iteration);
            }