2017-03-15 2 views
0

누출 :C# UWP 새로운 뷰 메모리는 내가 새로운 뷰를 생성하고이 코드

CoreApplicationView newView = CoreApplication.CreateNewView(); 
int newViewId = 0; 
await newView.Dispatcher.RunAsync(CoreDispatcherPriority.Normal,() => 
    { 
     Frame frame = new Frame(); 
     frame.Navigate(typeof(SecondaryPage), null); 
     Window.Current.Content = frame; 
     // You have to activate the window in order to show it later. 
     Window.Current.Activate(); 

     newViewId = ApplicationView.GetForCurrentView().Id; 
    }); 
bool viewShown = await ApplicationViewSwitcher.TryShowAsStandaloneAsync(newViewId); 

나는 새 창 있음을 닫고, 실행 코드를 다시, 다시 나는 새로운 것을 닫고 다시 내가 다른 창을 열 때

    : 윈도우의 메모리 사용량은 내가 노력하고 2 가지 방법이 있습니다, 그래서 ... 나는 모든 창문이 닫혀 있지만, 단지 실제로 숨겨지지 않습니다 생각

    을 ... 더 크고 더 큰 점점 그렇게되어

  1. 닫힌 창을 실제로 "죽이려"시도하십시오.
  2. 에게 ...이 작업을 수행하는 방법에 대한 제안을 ... 난 그냥 주에만 2 창,있을 원하는

을 숨겨진 창 쇼를 다시하고 다른 콘텐츠입니다 만들기 위해 시도하고이 새로 만든 ?

편집 :

이는 내가이이 앱 3 개 스크린 샷은 https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/MultipleViews

이 예제를 사용할 때 모습입니다

. 나는 4 뷰 추가 한 후

이는 다음과 같습니다 :

이 응용 프로그램이 시작될 때 메모리 소비입니다

을 내가 열고 그들 각자 닫을 때이다 :

그럼에도 불구하고 예제 메모리 사용량이 증가하고 있습니다 ...

답변

1

창을 닫으면 t가 다시 필요할 경우를 대비하여 최근 사용한 창 목록에 유지됩니다. 다시 필요하지 않거나 메모리를 다시 필요로한다는 것을 안다면 ApplicationView.Consolidated 이벤트가 호출 된 후에 Window.Current.Close();으로 호출하여 닫을 수 있습니다.

여기에 대한 설명은 this article on the "buildingapps" blog입니다.
(매우 복잡한 IMO) example in the UWP samples repository도 있습니다.

+0

내 질문을 편집했습니다 ... – user3239349

+0

그래도 내가 할 때마다 메모리 사용량이 상승하고보기를 열 때마다 ... – user3239349

관련 문제