Просто ищите подходящее место для размещения этого фрагмента кода.
предположим, что у вас есть следующее свойство:
[Display(Name = "Solar Radiation (Average)", ShortName = "SolarRadiationAvg")]
public int SolarRadiationAvgSensorId { get; set; }
И вы хотите получить значение ShortName. Вы можете сделать:
((DisplayAttribute)(typeof(SensorsModel).GetProperty(SolarRadiationAvgSensorId).GetCustomAttribute(typeof(DisplayAttribute)))).ShortName;
Или сделать его общим:
internal static string GetPropertyAttributeShortName(string propertyName)
{
return ((DisplayAttribute)(typeof(SensorsModel).GetProperty(propertyName).GetCustomAttribute(typeof(DisplayAttribute)))).ShortName;
}
Три самых влиятельных фактора для скорости Eclipse:
"та же" рабочая область в Индиго (3.7.2) SR2 загружается за 4 секунды в Kepler SR2 (4.3.2) за 7 секунд и в Луне (4.4.0) за 10 секунд. Все - пакеты EE Java. Более новые версии больше связали плагины, но тем не менее тенденция очевидна. ("той же" рабочей областью я имею в виду: то же (дополнительно установленный) используемые плагины, те же проекты, проверенные из управления версиями).
Запуск его с последний JDK (1.7 во время записи, которая не предотвращает Вас для компиляции в проекте Eclipse с любым другим JDK, который Вы хотите: 1.4.2, 1.5, 1,6 более старых...)
-vm jdk1.6.0_10\jre\bin\client\jvm.dll
Конфигурирование eclipse.ini (см. этот вопрос для полного eclipse.ini )
-Xms128m
-Xmx384m
-XX:MaxPermSize=128m _# NOTE: this option is obsolete in Java 8, it will be ignored_
-Xss2m
[...]
Xmx
аргументом является объем памяти, который Eclipse получит (простыми словами). С -Xmx384m
, это добирается 384 МБ RAM, с -Xmx4G
это добирается 4 ГБ, и т.д.
Примечание:
что касается jvm.dll имеет преимущества:
, Но это может также иметь некоторые недостатки если Вы попытка продвинуть память слишком высоко .
память по умолчанию, взятая Eclipse, комбинация MaxPermSize и Xmx. Здесь [до 1 112] 512 общее количество МБ, которое является достаточно для 1 компьютер памяти ГБ.
Единственный реальный способ ускорить Eclipse со стандартными плагинами состоит в том, чтобы дать ему больше памяти и в некоторых случаях доступа к более быстрому пространству памяти / дефрагментируемый жесткий диск.
Кроме того нет очень, можно сделать мудрый производительностью: большинство стандартных плагинов не имеет непрерывной стоимости времени выполнения, даже , Mylyn относительно быстр.
Обновление до последней JVM, поддерживаемой на Вашей машине, может помочь также.
Некоторые люди понижают до более старых версий Eclipse для получения лучшей производительности. Может также иметь смысл использовать классика Eclipse вместо официальных выпусков.
Я даю ему тонну памяти (добавьте, что-xMx whateverM переключается на команду, которая запускает его), и постарайтесь не выходить и перезапускать его - я нахожу, что худшие задержки находятся на запуске, таким образом давая его, много RAM позволяет мне продолжать идти дольше, прежде чем это откажет.
Еще один прием должен отключить автоматические сборки.
Закройте любые открытые проекты, которые не находятся в текущем употреблении.
Попытка выключить автоматическое публикуют режим во время разработки.
Удостоверьтесь, что Вы используете JVM Sun для выполнения Eclipse.
На Linux, особенно Ubuntu, Eclipse установлен по умолчанию для использования GCJ с открытым исходным кодом, который имеет решительно более плохую производительность. Используйте update-alternatives --config java
для переключения на JVM Sun для большого улучшения мгновенности UI в Eclipse.
Плагины загрузок Eclipse лениво и наиболее распространенные плагины, как Subclipse, ничего не делают, если Вы не используете их. Они не замедляют Eclipse вообще в течение времени выполнения, и это не поможет Вам отключить их. На самом деле Mylyn, как показывали, уменьшал объем потребляемой памяти Eclipse, когда используется правильно.
я выполняю Eclipse с тоннами плагинов без любой потери производительности вообще.
Это не только память, которую необходимо увеличить с переключателем-Xmx, это также генерал перманента размер . Я думаю, что проблема была решена в Eclipse 3.4.
Если вы используете InnoDB (или механизм хранения, который их поддерживает), вы можете использовать ограничения FOREIGN KEY для удаления соответствующих строк. Это один из самых простых и безопасных подходов, если вы не возражаете против небольшого влияния внешних ключей на производительность. Обратите внимание, однако, что строки, удаленные из-за ограничений, не запускают триггеры.
В качестве альтернативы вы можете использовать триггеры. Они работают с любым механизмом хранения, и обычно их достаточно легко написать. Мне они нравятся, но они не очень производительны, если вы удаляете большое количество строк одновременно (несколько сотен или тысяч).
CREATE TRIGGER ad_orders AFTER DELETE ON orders
FOR EACH ROW DELETE FROM orders_items WHERE orderID = OLD.orderID;
Наконец, как было предложено в предыдущем ответе,
( Windows -> Настройки; Общие -> Внешний вид -> Украшение этикеток
)
и отключив неиспользуемые возможности при запуске
( Windows -> Настройки; Общие -> Запуск и выключение
).
Вы также можете получить дополнительную производительность, выбрав другую стратегию сбора мусора в зависимости от вашей JVM.
Если вам надоело с циклами перезапуска вы можете использовать JavaRebel из ZeroTurnaround. Это сократит время, затрачиваемое на перезапуск сервера / клиента.
I've disabled all unused options in Windows > Preferences > General and it has a huge positive impact on performance, eclipse is still slow when switching tabs, I don't want to increase memory, but it's a lot faster when scrolling. Thx for the tips.
Я также настраивал vmargs и прочее. Но что действительно ускорило работу Eclipse в Windows, так это «правильная» конфигурация антивирусного программного обеспечения. Вам необходимо отключить проверку упакованных файлов по требованию. jar, а многие файлы, относящиеся к java, упакованы с помощью алгоритма PKZIP для экономии места. Поскольку Eclipse использует множество java-файлов, антивирус пытается индивидуально распаковать и просканировать каждый из них. Итак, для платформы Windows: отключите сканирование упакованных файлов по требованию, иначе Eclipse будет работать необычно медленно. Имейте в виду, что отключение этого параметра, к сожалению, делает вашу систему более слабой против атак, большинство вредоносных программ используют упаковщики.
Есть еще одна вещь, которая действительно ускоряет Eclipse как в Windows, так и особенно в Linux, - это размещение JVM на RAM-диске.
Для Windows вы можете использовать коммерческий драйвер RAM-диска от Qsoft .
Для Linux используйте любой из методов, описанных в многочисленных статьях в Интернете. Важно выделить на RAM-диске дополнительное пространство, которое на 10% больше, чем размер JVM.
Проверьте это. Это действительно имеет значение.
Отключите антивирусные сканеры или, по крайней мере, настройте любой антивирусный сканер так, чтобы он не сканировал файлы JAR при доступе для чтения.
Спасибо за подсказки. Эти параметры (упомянутые выше) мне очень помогли:
Windows:
Увеличение памяти и в отношении моей обновленной версии Java в eclipse.ini:
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
-Xverify:none
Кроме того, поскольку мы оптимизируем скорость, установка - Xms
с тем же значением, что и -Xmx
, запускает JVM с максимальным объемом памяти, который ей разрешено использовать.
Linux / Ubuntu:
Использование
update-alternatives --config java
Хотя это не имеет прямого отношения к Eclipse:
Если вы используете Windows 7 (и, предположительно, Windows Vista), убедитесь, что отключили индексирование файлов в папке рабочего пространства, если ваши материалы находятся в месте по умолчанию - домашней папке. Windows по умолчанию индексирует все в вашей домашней папке, а для рабочей области это обычно просто лишнее. (Щелкните правой кнопкой мыши папку рабочего пространства в проводнике, Свойства -> Дополнительно)
. Перейти к Windows -> Настройки -> Проверка и снимите флажки со всех валидаторов
, которые вам не нужны или не нужны.
Для Eclipse 3.7 вы используете Windows -> Настройки -> Общие -> Запуск и завершение работы .