Где я могу найти, что профилировщик для приложений C# используется в Visual Studio 2008?

Я наконец нашел, как, но мне не нравится этот способ, поскольку вместо того, чтобы удалять то, что вы не хотите, вы определяете, какие кнопки вы хотите (и просто не ставите то, что вам не нужно). Когда вы вызываете CKeditor.replace, вы можете определить панель инструментов следующим образом:

    CKEDITOR.replace( 'YOURE_TEXT_AREA_ID', {
    toolbar: [
    { name: 'document', groups: [ 'mode', 'document', 'doctools' ], items: [ 'Source', '-', 'Save', 'NewPage', 'Preview', 'Print', '-', 'Templates' ] },
    { name: 'clipboard', groups: [ 'clipboard', 'undo' ], items: [ 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo' ] },
    { name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ], items: [ 'Find', 'Replace', '-', 'SelectAll', '-', 'Scayt' ] },
    { name: 'forms', items: [ 'Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField' ] },
    '/',
    { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ], items: [ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat' ] },
    { name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ], items: [ 'NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', 'CreateDiv', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', '-', 'BidiLtr', 'BidiRtl', 'Language' ] },
    { name: 'links', items: [ 'Link', 'Unlink', 'Anchor' ] },
    { name: 'insert', items: [ 'Image', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak', 'Iframe' ] },
    '/',
    { name: 'styles', items: [ 'Styles', 'Format', 'Font', 'FontSize' ] },
    { name: 'colors', items: [ 'TextColor', 'BGColor' ] },
    { name: 'tools', items: [ 'Maximize', 'ShowBlocks' ] },
    { name: 'others', items: [ '-' ] },
    { name: 'about', items: [ 'About' ] }
]
});

(для справки это стандартная полная панель инструментов) Элементы представляют кнопки, поэтому просто удаляйте ненужные элементы. Вот и все.

Есть ли лучший ответ?

6
задан GEOCHET 26 May 2009 в 18:10
поделиться

8 ответов

Вот список профайлеров .Net с открытым исходным кодом .

Я использовал и мне нравился Ants-Profiler от Red Gate, но он стоит денег (оно того стоит, ИМХО).

11
ответ дан 8 December 2019 в 02:46
поделиться

Профилировщик Visual Studio является частью только Team System. Он не включен в Visual Studio Professional.

Существует бесплатный профилировщик .NET под названием nprof , но он еще не выпущен и может быть довольно нестабильным. Кроме того, есть отличные коммерческие профилировщики, такие как ANTS Profiler от Red Gate ; однако это не низкая стоимость.

6
ответ дан 8 December 2019 в 02:46
поделиться

Обратите внимание на профилировщик EQATEC , он бесплатный и работает довольно хорошо. Также работает для ASP.NET и .NET CF.

5
ответ дан 8 December 2019 в 02:46
поделиться

Я рекомендую dotTrace. Не бесплатно, цена составляет 170 евро за персональную лицензию.

http://www.jetbrains.com/profiler/index.html

4
ответ дан 8 December 2019 в 02:46
поделиться

Я использовал AQtime с большим успехом.

Как уже упоминалось, ANTS также является хорошим вариантом.

3
ответ дан 8 December 2019 в 02:46
поделиться

Если вы просто хотите профилировать память, отлично подойдет .NET Memory Profiler . После этого у него есть пробный период и небольшая стоимость - оно того стоит. Если вы хотите потратить немного денег, DevPartner Studio очень хороша.

2
ответ дан 8 December 2019 в 02:46
поделиться

Профилировщики для .NET обсуждаются в этом потоке переполнения стека . Я использовал CLR Profiler несколько, и это помогало мне раньше решать некоторые проблемы с производительностью программного обеспечения. Стоит попробовать. Microsoft опубликовала руководство по использованию профилировщика CLR .

1
ответ дан 8 December 2019 в 02:46
поделиться

Для настройки производительности, в отличие от диагностики памяти, есть простой способ сделать это .

Это нелогично, но все, что вам нужно сделать, это запустить программу в среде IDE, и, пока она работает медленно, несколько раз приостановить ее, исследуя стек вызовов на предмет понять, почему он делает то, что делает. Скорее всего, несколько образцов покажут, что он делает что-то, от чего вы можете избавиться. Сэкономленное время примерно равно доле выборок, содержащих исправленный вами код.

Он «быстрый и грязный», но в отличие от большинства профилировщиков, он точно определяет фактические операторы, требующие внимания, а не только функции, которые их содержат. Он также дает приблизительную оценку ускорения, которого вы можете ожидать, исправив их. Его не смущает рекурсия, и он позволяет избежать трудности дерева вызовов, заключающейся в том, что проблема может быть небольшой в любой ветви, но может быть большой из-за того, что она распределена по множеству групп.

Я беру несколько образцов N, обычно не более 20 . Если где-то в середине стека есть активная точка или вызов мошеннического метода, на который уходит некоторая доля F времени выполнения, то количество выборок, которые покажут это, равно NF + - sqrt (NF (1-F). Если N = 20 и F = 0,15, например, количество образцов, которые покажут это, составляет 3 + - 1,6, так что у меня есть отличные шансы найти его.

Часто F больше похоже на 0,5, поэтому количество образцов, показывающих это составляет 10 + - 2,2, поэтому его нельзя пропустить.

Обратите внимание, это не имеет абсолютно никакого отношения к тому, насколько быстро код или как часто он выполняется. Если оптимизация сэкономит вам определенный процент времени, от этого зависит, какой процент образцов будет отображать его для вас.

Обычно есть несколько мест для оптимизации. Если в задаче 1 F1 = 0,5, а в задаче 2 F2 = 0,1, то если вы исправляете проблему 1 (удваивая скорость программы), то F2 обычно увеличивается на этот коэффициент до 0,2. Так что вы можете сделать это снова и быть уверенным, что найдете проблему 2. Таким образом, вы можете решить ряд проблем, пока код не станет практически оптимальным.

1
ответ дан 8 December 2019 в 02:46
поделиться
Другие вопросы по тегам:

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