Beispiel #1
0
        private async void Scavenger(IdleDispatchedHandlerArgs e)
        {
            var now = _watch.Elapsed;
            var removedInstancesCount = 0;

            foreach (var list in _pooledInstances.Values)
            {
                removedInstancesCount += list.RemoveAll(t => now - t.CreationTime > TimeToLive);
            }

            if (removedInstancesCount > 0)
            {
                if (_trace.IsEnabled)
                {
                    for (int i = 0; i < removedInstancesCount; i++)
                    {
                        _trace.WriteEvent(TraceProvider.ReleaseTemplate);
                    }
                }

                // Under iOS and Android, we need to force the collection for the GC
                // to pick up the orphan instances that we've just released.

                GC.Collect();
            }

            await Task.Delay(TimeSpan.FromSeconds(30));

            CoreDispatcher.Main.RunIdleAsync(Scavenger);
        }
Beispiel #2
0
        private async void Scavenger(IdleDispatchedHandlerArgs e)
        {
            Scavenge(false);

            await Task.Delay(TimeSpan.FromSeconds(30));

            CoreDispatcher.Main.RunIdleAsync(Scavenger);
        }
        private async void Scavenger(IdleDispatchedHandlerArgs e)
        {
            Scavenge(false);

            await _platformProvider.Delay(TimeSpan.FromSeconds(30));

            _platformProvider.Schedule(Scavenger);
        }
        private void ItemsPanelChangedCallback(IdleDispatchedHandlerArgs e)
        {
            var wg = ItemsPanelRoot as VariableSizedWrapGrid;

            if (wg != null)
            {
                wg.ItemWidth = _itemWidth;
            }
        }
        private void SetLayoutCompleted(IdleDispatchedHandlerArgs args)
        {
            this.fullLogs.Add("SetLayoutCompleted layoutCompletedCount=" + layoutCompletedCount);
            layoutCompletedCount--;

            if (layoutCompletedCount == 0)
            {
                txtLayoutCompleted.Text = "Yes";
            }
        }
Beispiel #6
0
 private void QuitApp(IdleDispatchedHandlerArgs e)
 {
     Application.Current.Exit();
 }