Как я могу видеть визуализацию динамического графа вызовов для программы.NET?

Вы упомянули, что в вашем массиве было 60 элементов, поэтому я просто создал образец массива 2 x 30 в качестве примера:

int[][] myArray = new int[2][30];
    int increment = 0;
    for(int x = 0; x < myArray.length; x++) {
        for(int y = 0; y < myArray[x].length; y++) {
            myArray[x][y] = increment;
            increment++;
        }
    }

Далее, если вы используете цикл for-each, ваш ошибка происходит потому, что каждая отдельная строка массива как ИНДЕКС В СЕБЕ. Таким образом, ваш цикл for-each должен представлять собой тип (int []) массива int:

for(int[] x: myArray) {

Внутри каждого отдельного массива (x) есть примитивное значение int, поэтому мы запускаем другое значение for-each -loop для извлечения каждого отдельного значения:

для (int y: x) {

И вот ваш полный код:

for(int[] x: myArray) {
        for(int y: x) {
            totalVal += y;
        }
    }
System.out.println(totalVal);

И вывод сумма каждого целого в массиве:

1770
5
задан ire_and_curses 13 September 2009 в 12:55
поделиться

4 ответа

Профильный CLR является целью.NET Профильный API, таким образом, это, кажется, идеально подходит для Вашей потребности. Большая часть части продуктов профилировщика основана на вершине его. Но необходимо будет написать неуправляемый код, urk.

Используя Cecil возможно также и довольно прост, если Вы просто хотите записать, вводят/выходят методов.

Править:

Ну, PostSharp является, вероятно, лучшим решением, поскольку он позволяет Вам обрабатывать такое требование путем доверия статическому переплетению. AOP обеспечивает, лучший уровень абстракции, чем непосредственно переписывают IL с Cecil.

1
ответ дан 14 December 2019 в 13:50
поделиться

Возможно, этот проект с открытым исходным кодом на CodePlex мог помочь как начальная точка:

SequenceViz

http://www.codeplex.com/sequenceviz

"SequenceViz является инструментом для генерации диаграмм последовательности путем инженерного анализа блоков.NET. Хотя это делает немного больше, чем это в более поздних версиях".

Существует автономная версия и реализация как плагин отражателя.

сопроводительный текст http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=sequenceviz&DownloadId=44432

3
ответ дан 14 December 2019 в 13:50
поделиться

Я люблю Профилировщика CLR. Я не потрачу впустую пространство путем репродуцирования документации здесь, но это кажется, что это точно, что Вы ищете.

1
ответ дан 14 December 2019 в 13:50
поделиться

Вы coud используете NProf, проект с открытым исходным кодом на SourceForge. Это позволяет Вам расширять GUI по умолчанию с помощью новых инструментов визуализации.

"nprof разработан, чтобы быть не только абсолютным профилировщиком для приложений.NET, но также и полным API, который может использоваться, чтобы создать другие фронтенды профилировщика, а также расширить GUI по умолчанию с помощью новых инструментов визуализации".

1
ответ дан 14 December 2019 в 13:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: