Я написал очень простое приложение для новичков с 6-гранным многогранником («ящик»), который поворачивается на 180 градусов, когда я нажимаю кнопку. и затем снова поворачивается на следующий щелчок. Каждый поворот захватывает еще 90 МБ, и он не отпускает, пока я не закрою приложение. Ящик определен в XAML. Storyboard
, DoubleAnimation
и PropertyPath
и т. Д. Все создаются ONCE, в конструкторе. Код кнопки выглядит так:Утечка памяти в WPF
private void button_Storyboard1_Click(object sender, RoutedEventArgs e)
{
GC.Collect();
if (_bFront)
{
_myDoubleAnimation.From = 0;
_myDoubleAnimation.To = 180;
_bFront = false;
}
else
{
_myDoubleAnimation.From = 180;
_myDoubleAnimation.To = 0;
_bFront = true;
}
_myDoubleAnimation.Duration = _Duration;
Storyboard.SetTargetName(_myDoubleAnimation, "rotate_me");
Storyboard.SetTargetProperty(_myDoubleAnimation, _PropP);
_sb.Children.Add(_myDoubleAnimation);
_sb.Begin(this.viewport3D1);
}
После нескольких поворотов у меня не хватает памяти! Что происходит?
, пожалуйста, не могли бы вы рассказать мне, что такое карта gfx? –