2017-06-14 2 views
0

Ich benutze XAMARIN, um eine Android-Anwendung zu entwickeln.
Ich möchte einen Fehler über das Leaking erneut versuchen, um die globale Referenz freizugeben.
(Um Absturz-Anwendung zu machen)
Ich versuche, viele globale Referenz (mehr als 52K) zu erstellen, aber wenn die Anzahl der globalen Referenz erreichen ~ 46K, GC immer versuchen, immer wieder zu sammeln, so dass ich nicht mehr erstellen kann .
Wer weiß, wie man mehr schafft?Wie erstelle ich mehr als 46K globale Referenz?

 
06-14 10:57:15.891 I/monodroid-gc(30078): 46196 outstanding GREFs. Performing a full GC! 
06-14 10:57:17.651 I/dalvikvm-heap(30078): Clamp target GC heap from 259.249MB to 256.000MB 
06-14 10:57:17.651 D/dalvikvm(30078): GC_EXPLICIT freed 14K, 2% free 256925K/261688K, paused 3ms+136ms, total 575ms 
06-14 10:57:21.331 D/Mono (30078): GC_TAR_BRIDGE bridges 46074 objects 74803 opaque 112565 colors 47058 colors-bridged 45516 colors-visible 45516 xref 28118 cache-hit 275 cache-semihit 0 cache-miss 1542 setup 10.29ms tarjan 138.36ms scc-setup 23.85ms gather-xref 7.67ms xref-setup 3.00ms cleanup 21.47ms 
06-14 10:57:21.331 D/Mono (30078): GC_BRIDGE: Complete, was running for 5078.26ms 
06-14 10:57:21.331 D/Mono (30078): GC_MAJOR_SWEEP: major size: 24096K in use: 20670K 
06-14 10:57:21.331 D/Mono (30078): GC_MAJOR: (user request) time 351.36ms, stw 354.13ms los size: 20636K in use: 3034K 
06-14 10:57:21.331 I/monodroid-gc(30078): 46197 outstanding GREFs. Performing a full GC! 

Antwort

0

Seine schlechte Praxis, zu viele globale Referenz zu nehmen. Bitte Wiederverwendung Referenz und verwenden Datenbank auch Konstruktor und eine gute Datenweitergabe Methoden Schnittstelle, übertragen usw.

+0

Ich weiß, aber das ist nicht mein Produkt-Code, es für den Test verwendet wird –

Verwandte Themen