Xamarin ProfilerXamarin Profiler

In diesem Leitfaden werden die wichtigsten Features der Xamarin Profiler erläutert. Dabei werden Profiler, Profilerstellung und Zeitpunkt der Verwendung sowie ein Standard Workflow für die Profilerstellung von xamarin-Anwendungen untersucht.This guide explores the key features of the Xamarin Profiler. It look at profilers, profiling and when they should be used, and at a standard workflow for profiling Xamarin applications.

Der Erfolg einer Anwendung hängt von der Benutzer Leistung ab.An application’s success depends on the end user experience. Als Entwickler haben Sie möglicherweise einige wirklich tolle Features in Ihrer APP implementiert, aber wenn die APP träge oder vollständig ausfällt, wird der Benutzer Sie wahrscheinlich entfernen.As a developer you might have implemented some really awesome features in your app, but if the app is sluggish or full of crashes, the user will likely get rid of it.

In der Vergangenheit hat Mono einen leistungsfähigen befehlszeilenprofiler zum Sammeln von Informationen zu Programmen, die in der Mono-Laufzeit ausgeführt werden, als Mono Log Profilervorgestellt.Historically, Mono has featured a powerful command-line profiler for gathering information about programs running in the Mono runtime called the Mono log profiler. Der Xamarin Profiler eine grafische Schnittstelle für den Mono Log Profiler und unterstützt die Profilerstellung für Android-, Ios-, tvos-und Mac-Anwendungen auf Mac-und Android-, IOS-und tvos-Anwendungen unter Windows.The Xamarin Profiler a graphical interface for the Mono log profiler, and supports profiling Android, iOS, tvOS, and Mac applications on Mac, and Android, iOS, and tvOS applications on Windows.

Der Xamarin Profiler verfügt über eine Reihe von Tools für die Profilerstellung – Zuordnungen, Zyklen und Zeit Profiler.The Xamarin Profiler has a number of instruments available for profiling — Allocations, Cycles, and Time Profiler. In dieser Anleitung wird erläutert, was diese Instrumente messen und wie Sie Ihre Anwendung analysieren. Außerdem wird erläutert, wie die Daten auf den einzelnen Bildschirmen dargestellt werden.This guide explores what these instruments measure and how they analyze your application, and clarifies the meaning of the data presented on each screen.

In diesem Handbuch werden gängige Profil Erstellungs Szenarien behandelt und der Profiler als Tool für die Analyse und Optimierung von IOS-und Android-Anwendungen vorgestellt.This guide examines common profiling scenarios and introduces the profiler as a tool to help analyze and optimize iOS and Android applications.

Herunterladen und installierenDownload and Install

Hinweis

Sie müssen ein Visual Studio Enterprise Abonnent sein, um dieses Feature entweder in Visual Studio Enterprise unter Windows oder Visual Studio für Mac auf einem Mac entsperren zu können.You will need to be a Visual Studio Enterprise subscriber to unlock this feature in either Visual Studio Enterprise on Windows or Visual Studio for Mac on a Mac.

Bei der Xamarin Profiler handelt es sich um eine eigenständige Anwendung, die in Visual Studio für Mac und Visual Studio integriert ist, um die Profilerstellung innerhalb der IDE zu ermöglichen.The Xamarin Profiler is a standalone application, and is integrated with Visual Studio for Mac and Visual Studio to enable profiling from within the IDE.

Laden Sie das Installationspaket für Ihre Plattform herunter:Download the install package for your platform:

Starten Sie nach dem herunterladen das Installationsprogramm, um dem System die Xamarin Profiler hinzuzufügen.Once downloaded, launch the installer to add the Xamarin Profiler to your system.

Profiler und ProfilerstellungProfilers and Profiling

Die Profilerstellung ist ein wichtiger und oft übersehener Schritt bei der Anwendungsentwicklung.Profiling is an important and often overlooked step in application development. Die Profilerstellung ist eine Form der dynamischen Programmanalyse . Sie analysiert das Programm, während es ausgeführt wird und verwendet wird.Profiling is a form of dynamic program analysis - it analyzes the program while it is running and in use. Ein Profiler ist ein Data Mining Tool, das Informationen über die Zeit Komplexität, die Verwendung bestimmter Methoden und den zugeordneten Arbeitsspeicher sammelt.A profiler is a data mining tool that collects information about time complexity, the usage of particular methods, and the memory being allocated. Mit einem Profiler können Sie einen Drilldown durchführen und diese Metriken analysieren, um Problembereiche im Code zu ermitteln.A profiler enables you to drill deep and analyze these metrics to pinpoint problem areas in code.

Beim Entwerfen und entwickeln einer Anwendung ist es wichtig, nicht vorzeitig zu optimieren. Das heißt, Sie müssen den Code in Bereichen entwickeln, auf die nur selten zugegriffen wird.When designing and developing an application, it is important to not optimize prematurely; that is, spending time developing your code in areas that will rarely be accessed. Dies ist die Leistungsfähigkeit der Profilerstellung.This is the power of profiling. Ein Profiler bietet Einblicke in die am häufigsten verwendeten Teile Ihrer Codebasis und hilft dabei, Bereiche zu finden, in denen Sie Zeit für Verbesserungen aufwenden sollten.A profiler provides insight into the most commonly used parts of your code base , and helps locate areas where you should spend time making improvements. Entwickler sollten darauf achten, dass Sie wissen, wo die meiste Zeit in Ihrer Anwendung aufgewendet wird und wie der Arbeitsspeicher von Ihrer Anwendung verwendet wird.Developers should take care to understand where most of the time is spent in your application, and how memory is used by your application.

Die Profilerstellung ist für alle Arten der Entwicklung hilfreich, aber Sie ist für die Entwicklung mobiler Anwendungen besonders wichtig.Profiling is helpful in all types of development, but it is especially crucial in mobile development. Nicht optimierter Code ist auf mobilen Plattformen viel deutlicher als auf Desktop Computern, und der Erfolg Ihrer APP hängt von einem schönen und optimierten Code ab, der effizient ausgeführt wird.Unoptimized code is much more noticeable on mobile platforms than on desktop computers, and the success of your app depends on beautiful and optimized code that runs efficiently.

Xamarin ProfilerXamarin Profiler

Der Xamarin Profiler stellt Entwicklern eine Möglichkeit zum Erstellen von Profilen für Anwendungen in Visual Studio für Mac oder Visual Studio zur Verfügung.The Xamarin Profiler provides developers with a way to profile applications from inside Visual Studio for Mac or Visual Studio. Der Profiler sammelt und zeigt Informationen über die APP an, die dann vom Entwickler verwendet werden können, um das Verhalten der Anwendung zu analysieren.The profiler collects and displays information about the app, which can then be used by the developer to analyze an application’s behavior. Es gibt verschiedene Möglichkeiten zum Erstellen eines Profils für eine Anwendung mit dem Xamarin Profiler, nämlich Speicher Profilerstellung und statistische Stichprobe.There are a number of different ways to profile an application with the Xamarin Profiler, namely memory profiling and statistical sampling. Diese werden über die Zuordnungen und Zeit Profil Erstellungs Instrumente durchgeführt.These are carried out through the Allocations and Time Profiler instruments respectively.

Derzeit können die Xamarin Profiler verwendet werden, um xamarin. IOS-, xamarin. Android-und xamarin. Mac-Anwendungen auf dem Mac (über Visual Studio für Mac) zu testen.Currently, the Xamarin Profiler can be used to test Xamarin.iOS, Xamarin.Android, and Xamarin.Mac applications on Mac (Via Visual Studio for Mac). Der Profiler ist ein separater Prozess von der IDE und kann daher nicht nur über Visual Studio für Mac gestartet werden, sondern kann als eigenständige Anwendung verwendet werden, um exe-und .mlpd Dateien zu überprüfen, die aus dem Mono Log Profilererstellt wurden.The profiler is a separate process from the IDE, and so, in addition to launching from Visual Studio for Mac, it can be used as a standalone application to examine .exe and .mlpd files which have been produced from the mono log profiler.

Profiler-UnterstützungProfiler Support

Die Unterstützung für die Xamarin Profiler ist auf den folgenden Plattformen verfügbar:Support for the Xamarin Profiler is available on the following platforms:

  • Visual Studio für Mac (macOS, mit Enterprise-Lizenz)Visual Studio for Mac (macOS, with Enterprise License)

    • AndroidAndroid
      • Gerät und EmulatorDevice and Emulator
    • iOSiOS
      • Gerät und SimulatorDevice and Simulator
    • tvos (Zeit Instrument wird nicht unterstützt)tvOS (Time Instrument is not supported)
      • Gerät und SimulatorDevice and Simulator
    • MacMac
  • Visual Studio (nur Enterprise -Version)Visual Studio (Only Enterprise Version)

    • AndroidAndroid
      • Gerät und EmulatorDevice and Emulator
    • IOS [experimentell]iOS [Experimental]
      • Gerät und SimulatorDevice and Simulator
    • tvOStvOS
      • Gerät und SimulatorDevice and Simulator

Beachten Sie, dass Sie nur Profile für Debugkonfigurationen erstellen können.Note that you can only profile Debug configurations.

Grundlagen zu ProfilerProfiler Basics

In diesem Abschnitt werden die Teile des Xamarin Profiler vorgestellt und die zugehörigen Features erläutert.This section introduces the parts of the Xamarin Profiler and tours its features.

Profilerstellung in ihrer App zulassenAllow Profiling in your App

Bevor Sie ein Profil für Ihre APP erstellen können, müssen Sie die Profilerstellung in den Projektoptionen der App zulassen.Before you can successfully Profile your app, you will need to allow Profiling in the app's Project Options.

  • erhältlichiOS:

Erstellen > IOS-debug> Aktivieren der ProfilerstellungBuild > iOS Debug > Enable Profiling

Dialog Feld für IOS-Optionen in Visual Studio für Mac

  • ErhältlichAndroid:

Erstellen > Android debug-> Entwickler Instrumentation aktivierenBuild > Android Debug > Enable Developer Instrumentation

Dialog Feld für Android-Optionen in Visual Studio für Mac

Starten des ProfilersLaunching the Profiler

Der Xamarin Profiler kann von Ihrer IDE aus gestartet werden, wenn Sie die Profilerstellung für Ihre IOS-oder Android-Anwendung oder als eigenständige Anwendung durchlaufen.The Xamarin Profiler can be launched from your IDE when you are profiling your iOS or Android application, or as a standalone application.

Starten von Visual Studio für MacLaunching from Visual Studio for Mac

  1. Stellen Sie zunächst sicher, dass die Anwendung in Visual Studio für Mac geladen ist, und wählen Sie die (standardmäßige) Debugkonfiguration aus.First, make sure you have your application loaded in Visual Studio for Mac, and select the (default) Debug configuration.
  2. Navigieren Sie zu ausführen, > starten Sie die Profilerstellungin Visual Studio für Mac, oder analysieren Sie > Xamarin Profiler in Visual Studio, um den Profiler zu öffnen, wie in der folgenden Abbildung gezeigt:Browse to Run > Start Profilingin Visual Studio for Mac, or Analyze > Xamarin Profiler in Visual Studio, to open the Profiler, as demonstrated in the diagram below:

Der Profiler wird von Visual Studio für Mac gestartet.

Wenn die Menü Elemente nicht angezeigt werden, lesen Sie den Leitfaden zur ProblemBehandlung.If the menu items do not appear, refer to the troubleshooting guide.

Dadurch wird der Profiler gestartet, und die Profilerstellung für die Anwendung wird automatisch gestartet.This launches the Profiler and automatically starts profiling the application.

Der Profiler kann verwendet werden, um den Arbeitsspeicher und die Leistung zu messen.The Profiler can be used to measure memory and performance. Dies erfolgt über die Instrumente für Zuordnungen und Zeitprofile, die im nächsten Abschnitt ausführlich erläutert werden.It achieves this through the Allocations and Time Profiler instruments, which we will explore in detail in the next section.

Speichern und Laden von Profiler-SitzungenSaving and Loading Profiler Sessions

Um eine Profil Erstellungs Sitzung zu einem beliebigen Zeitpunkt zu speichern, wählen Sie in der Profiler-Menüleiste Datei > Speichern unter... aus.To save a profiling session at any time, choose File > Save As... from the Profiler Menu bar. Dadurch wird die Datei im MLPD -Format gespeichert, ein spezielles, stark komprimiertes Format für die Profilerstellung von Daten.This saves the file in mlpd format, a special, highly compressed format for profiling data.

Nachdem es installiert wurde, finden Sie die Xamarin Profiler wie im folgenden Screenshot gezeigt im Ordner "Anwendungen":After it has been installed the Xamarin Profiler can be found in your Applications folder as illustrated in the screenshot below:

Eigenständigen Profiler über Mac öffnen

Sie können . MLPD -Dateien in den Profiler Laden, indem Sie die eigenständige Anwendung öffnen, Wählen Sie Ziel auswählen und die Datei laden.You can load .mlpd files into the Profiler by opening the standalone application, selecting Choose Target and loading the file.

Weitere Informationen finden Sie unter " Erstellen von MLPD-Dateien".For more information, see Generating .mlpd Files.

Profiler-FeaturesProfiler Features

Der Xamarin Profiler besteht aus fünf Abschnitten, wie unten dargestellt:The Xamarin Profiler is composed of five sections as illustrated below:

  • Symbolleiste – am Anfang des Profilers finden Sie Optionen zum Starten/Starten der Profilerstellung, Auswählen eines Ziel Prozesses, Anzeigen der Laufzeit der APP und Auswählen der geteilten Sichten, die die Profiler-Anwendung bilden.Toolbar – Located at the top of the profiler, this offers options to start/stop profiling, select a target process, view the running time of the app, and select the split views that compose the profiler application.
  • Instrumentations Liste – Hiermit werden alle für die Profil Erstellungs Sitzung geladenen Instrumente aufgelistet.Instrument List – This lists all instruments loaded for the profiling session.
  • Plotdiagramm – diese Diagramme beziehen sich horizontal auf die relevanten Instrumente in der Instrumentations Liste.Plot Chart – These charts relate horizontally to the relevant instruments in the instrument list. Mithilfe eines Schiebereglers (unten Zeit Profiler) kann die Skala geändert werden.A slider (shown beneath Time Profiler) can be used to change the scale.
  • Instrumentierungsdetailbereich -enthält Daten, die von der ausgewählten Ansicht des aktuellen Instrumentations Instruments angezeigt werden.Instrument Detail area - Contains data being displayed by the selected view of the current Instrument. Diese Sichten werden im folgenden Abschnitt ausführlicher erläutert.We will look at these views in more detail in the section below.
  • Inspektoransicht – enthält Abschnitte, die vom segmentierten Steuerelement ausgewählt werden können.Inspector View – This contains sections that can be selected by the segmented control. Die Abschnitte sind vom ausgewählten Instrument abhängig und beinhaltet: Konfigurationseinstellungen, Statistiken, Stapel Verfolgungs Informationen und Pfad zu Stamm Elementen.The sections are dependent on the instrument selected, and includes: Configuration Settings, Statistics, Stack Trace information, and Path to roots.

BewilliAllocations

Das Zuordnungs Instrument bietet ausführliche Informationen zu Objekten in der Anwendung, während diese erstellt und in der Garbage Collection gesammelt werden.The allocations instrument provides detailed information about objects in the application as they are being created and garbage collected.

Am Anfang des Profilers befindet sich das Zuordnungs Diagramm, in dem die Menge an Arbeitsspeicher angezeigt wird, die in regelmäßigen Abständen während der Profilerstellung zugeordnet wird.At the top of the profiler is the allocations chart, which displays the amount of memory allocated at regular intervals during the profiling. Derzeit ist das Zuordnungs Diagramm die Gesamtzahl der Zuordnungen und nicht die Größe des Heaps zu diesem Zeitpunkt.Currently the allocations graph is the total number of allocations and NOT the size of the heap at that point in time. In gewisser Hinsicht geht es nie Weg, sondern es wird immer nur noch zunehmen.In a sense, it will never go down, it will only ever increase. Dies schließt im Stapel zugeordnete Objekte ein.This includes objects allocated on the stack. Abhängig von der verwendeten Laufzeitversion kann das Diagramm anders aussehen – auch für die gleiche APP.Depending on the runtime version used, the chart can look different – even for the same app.

Es gibt unterschiedliche Datenansichten im Zuordnungs Instrument, mit denen Entwickler die Verwendung und Freigabe von Arbeitsspeicher durch Ihre Anwendung analysieren können.There are different data views in the Allocations instrument, which allow developers to analyze how their application is using and freeing memory. Diese Sichten werden im folgenden beschrieben:These views are described below:

  • Zuordnungen – hiermit wird eine Liste aller Zuordnungen angezeigt und nach Klassennamen gruppiert.Allocations – This displays a list of all allocations and groups them by class name. Dies bietet eine gute Übersicht über die verwendeten Klassen und Methoden, die Häufigkeit der Verwendung und die kollektive Größe der verwendeten Klassen.This provides a great overview of classes and methods being used, how often they are used, and the collective size of the classes used. Beim Doppelklicken auf eine Klasse wird der zugeordnete Arbeitsspeicher angezeigt:Double clicking on a class will show the memory allocated :

Die inspektoransicht für Zuordnungen bietet Optionen zum Filtern und Gruppieren von Objekten, zur Bereitstellung von Statistiken für zugeordnete Arbeitsspeicher und zu den obersten Zuordnungen sowie Ansichten für die Stapel Überwachung und den Pfad zum Stamm.The Inspector view for Allocations provides options for filtering and grouping objects, providing statistics on memory allocated, and the top allocations, as well as views for Stack Trace and Path to Root.

  • CallTree – zeigt die gesamte Aufrufstruktur aller Threads in der Anwendung an und enthält Informationen über den Arbeitsspeicher, der auf den einzelnen Knoten zugeordnet wird.Call Tree – This displays the entire call tree of all threads in the application and includes information about the memory allocated on each node. Wenn ein Element in der Liste ausgewählt wird, werden alle neben geordneten Knoten grau angezeigt.When an element is selected in the list, all sibling nodes will appear grey. Sie können die Struktur erweitern oder auf das Element doppelklicken, um einen Drilldown auszuführen. Wenn Sie diese Datenansicht anzeigen, kann die Anzeigeeinstellungen-inspektoransicht verwendet werden, um die dargestellte Darstellung zu ändern.You can expand the tree or double-click the element to drill down into it.When displaying this data view, the display settings inspector view can be used to change the way it is presented. Derzeit gibt es zwei Optionen:There are currently two options:
    1. Umgekehrte Aufrufstruktur – berücksichtigt die Stapel Überwachung von oben nach unten.Inverted Call Tree – This considers the stack trace from top to bottom. Dies ist eine bequeme Ansichts Option, da Sie die tiefststen Methoden angibt, bei denen die CPU ihre Zeit aufgewendet hat.This is a convenient view option as it indicates the deepest methods where the CPU has been spending its time.
    2. Separat durch Thread – diese Option organisiert die Aufrufstruktur nach Thread.Separate by thread – This option organizes the call tree by thread.
  • Momentaufnahmen – in diesem Bereich werden Informationen zu Speicher Momentaufnahmen angezeigt.Snapshots – This pane displays information about memory snapshots. Wenn Sie diese während der Profilerstellung für eine Live Anwendung generieren möchten, klicken Sie auf der Symbolleiste auf die Schaltfläche Kamera an jedem Punkt, den Sie sehen möchten, welcher Arbeitsspeicher beibehalten und freigegeben wird.To generate these while profiling a live application, click the Camera button in the toolbar at each point that you'd like to see what memory is retained and released. Sie können dann auf jede Momentaufnahme klicken, um herauszufinden, was im Hintergrund geschieht.You can then click each snapshot to explore what is happening under the hood. Beachten Sie, dass Momentaufnahmen nur erstellt werden können, wenn Live-Profilerstellung für eine APPNote that snapshots can only be taken when live profiling an app.

Zeit ProfilerTime Profiler

Mit dem instrumentierungsinstrumentierungsinstrument wird genau gemessen, wie viel Zeit in den einzelnen Methoden einer Anwendung aufgewendet wird.The Time Profiler instrument measures exactly how much time is spent in each method of an application. Die Anwendung wird in regelmäßigen Abständen angehalten, und es wird eine Stapel Überwachung in jedem aktiven Thread ausgeführt.The application is paused at regular intervals and a stack trace is run on each active thread. Jede Zeile im Bereich "Instrumentations Details" zeigt den Ausführungs Pfad an, der befolgt wurde.Each row in the Instrument Detail area shows the execution path that has been followed.

Das Zeichnungs Diagramm zeigt, wie im folgenden Screenshot gezeigt, die Anzahl der von der APP empfangenen Beispiele an, während Sie ausgeführt wird:The plot chart, as shown in the screenshot below, displays the number of samples received by the app as it runs:

  • Aufruf Struktur – zeigt die für jede Methode aufgewendeten Zeit an:Call Tree – Shows amount of time spent in each method:

KteCycles

Durch die Verwendung von C# und F# verwaltetem Code kann es ziemlich üblich sein, und leider ist es recht einfach, Verweise auf Objekte zu erstellen, die nie verworfen werden.Through the use of C# and F# managed code, it can be quite common, and unfortunately quite easy to create references to objects which will never be disposed. Mit diesem Instrument können Sie diese Objekte lokalisieren und die Zyklen anzeigen, auf die in der Anwendung verwiesen wird.This instrument allows you to pinpoint those objects, and display the cycles referenced in your application.

Profil Erstellungs AnwendungenProfiling Applications

Derzeit können nur die standarddebugkonfigurationen erstellt werden.Currently, only the default Debug configurations can be profiled.

Wenn Sie ein Profil für eine APP mit einer anderen Konfiguration erstellen, wird das folgende Meldungs Dialogfeld angezeigt:If you profile an app with any other configuration, you will be presented with the following message dialog:

Wählen Sie Aktualisieren , um fortzufahren.Select Update to continue.

Sgen-Garbage Collector und ProfilerstellungSGen Garbage Collector and Profiling

Der Sgen -Garbage Collector wird für alle xamarin-Plattformen verwendet.The SGen garbage collector is used for all Xamarin platforms.

Sgen ist ein generationsübergreifender GC, mit dem Objekte einer Anwendung in drei Heaps zugeordnet werden – Gärtnerei, Haupt Heap und Large Object Raum.SGen is a generational GC, which allocates objects of an application into three heaps — Nursery, Major Heap and the Large Object Space. Dies ermöglicht eine schnellere Ausführung von Garbage Collection.This allows for speedier execution of garbage collection. Sgen ist derzeit die Standard-GC für xamarin. Android und vereinheitlichte xamarin. IOS-Anwendungen.SGen is currently the default GC for Xamarin.Android, and Xamarin.iOS Unified applications.

Die xamarin. IOS-Anwendung, die den Classic API verwendet, verwendet den Boehm-GC – eine konservative, nicht generelle Garbage Collector.Xamarin.iOS application using the Classic API used the Boehm GC – a conservative, non-generational garbage collector. Da es konservativ ist, ist es weniger wahrscheinlich, dass Sie verfügbaren Arbeitsspeicher freigeben, was bei der Verwendung des Profilers zu ungenauen Ergebnissen führen kann.As it is conservative, it is less likely to free up available memory, which can lead to inaccurate results when using the profiler. Aus diesem Grund kann das Zuordnungs Instrument nicht mit dem Boehm-Garbage Collector verwendet werden.For this reason, the Allocations instrument cannot be used with the Boehm garbage collector.

Obwohl Sie mit einem Meldungs Dialogfeld aufgefordert werden, wenn Ihre APP den Boehm-GC verwendet, empfiehlt xamarin nicht, eine vorhandene IOS-Anwendung, die Boehm verwendet, ohne sorgfältige Untersuchung und gründliche Tests in Sgen zu wechseln.While you will be prompted with a message dialog if your app uses the Boehm GC, Xamarin does not recommend switching existing iOS application that use Boehm to SGen without careful research and thorough testing. Xamarin empfiehlt außerdem nicht, zur Profilerstellung zu Sgen zu wechseln und dann zurückzukehren, da diese Ergebnisse keine genauen Benchmarks der Speicherauslastung bereitstellen.Xamarin also does not recommend switching to SGen for profiling and then switching back, as these results will not provide accurate benchmarks of memory usage.

Weitere Informationen zur Speicherverwaltung finden Sie im Handbuch mit bewährten Methoden für Arbeitsspeicher und Leistung .For more information on memory management, refer to the Memory and Performance Best Practices guide.

ZusammenfassungSummary

In dieser Anleitung haben wir uns mit der Profilerstellung und der Vorteile des Entwicklers beschäftigt.In this guide we looked at what profiling is and how it is advantageous to the developer. Anschließend haben wir die Xamarin Profiler eingeführt und einige Verlaufs Informationen und Informationen zur Funktionsweise bereitgestellt.We then introduced the Xamarin Profiler, providing some history and information into how it works. Schließlich haben wir die Features der Xamarin Profiler besucht und die Zuordnungen und die Zeit der Profiler-Instrumente untersucht.Finally we toured the features of the Xamarin Profiler, and explored the Allocations and Time Profiler Instruments.