Если я правильно понимаю ваш вопрос, вы спрашиваете, в чем разница, если вы регистрируете обратный вызов слушателя с помощью $watch
или если вы делаете это с помощью $observe
.
Обратный вызов, зарегистрированный с $watch
, запускается при выполнении $digest
.
Обратный вызов, зарегистрированный с помощью $observe
, вызывается при изменении значения атрибутов, которые содержат интерполяцию (например, attr="{{notJetInterpolated}}"
).
Внутри директивы вы можете использовать оба из них очень похожим образом:
attrs.$observe('attrYouWatch', function() {
// body
});
или
scope.$watch(attrs['attrYouWatch'], function() {
// body
});
Я переключил эту строку в файле eclipse.ini (находится внутри пакета приложения eclipse):
-Dosgi.requiredJavaVersion=1.5
на
-Dosgi.requiredJavaVersion=1.6
, и переключение вкладок снова стало быстрым.
Перейти с 32-разрядной версией Какао. ИМХО 64-битная не поможет. Он действительно отлично работает на моем MBP 2,4 ГГц. Обычно у меня открыто около 30 файлов, некоторые довольно большие, никогда не сталкивались с тем, что вы описываете.
Попробуйте получить новый 32-битный дистрибутив Cocoa, ничего не изменяйте и проверьте, есть ли проблема. Это тоже может быть мошеннический плагин. У вас что-нибудь установлено?
Проверьте состояние кучи. Откройте настройки Eclipse, на самой первой странице настроек есть опция «показать состояние кучи». Возможно, вам не хватает памяти. Проверьте статус подкачки вашего компьютера с помощью монитора активности - если он часто меняет, я бы рекомендовал закрыть другие приложения. В общем, для машин разработки я рекомендую 4 ГБ ОЗУ.
Это известная проблема. Поскольку вы используете JDK1.5, вы можете попробовать вариант Carbon.
Это может быть ошибка, о которой говорилось. https://bugs.eclipse.org/bugs/show_bug.cgi?id=282229
У меня такая же проблема с OS X 10.5.7 и Eclipse 3.5.2 на довольно низкой машине (iMac начала 2006 года с 1,5 ГБ). Однако сразу после запуска машины все работает очень быстро. Я даже могу запустить JBoss AS, и все еще нет замедления. Я отслеживаю "Swap used" в мониторе активности, и он остается на уровне 0 байт swap used.
Затем я запускаю что-то еще, например, iTunes и почту или переключаюсь на другую учетную запись.
После этого все становится медленным, что вполне ожидаемо, и я вижу, что "Swap used" увеличивается. Eclipse замедляется, и работать с ним становится практически невозможно.
Затем я выхожу из другой учетной записи, закрываю все другие приложения, которые я открывал, так что состояние моей машины становится практически таким же, как и тогда, когда она была еще быстрой. НО... она остается по-собачьи медленной! Даже если я закрыл все другие приложения, "Swap used" в мониторе активности только немного уменьшается (с ~1.2GB до ~700MB). Простое переключение вкладок между двумя очень простыми Java-файлами занимает до 20 секунд, в то время как в мониторе активности я вижу, что использование процессора достигает 100%.
Здесь определенно происходит что-то странное. Это не похоже на нормальное поведение. Как будто Mac OS X переходит в "медленный режим", когда я требую от нее слишком много ресурсов, но когда ресурсы снова находятся, она не может восстановиться.
Очень раздражает!
Если я перезагружаю машину и снова открываю точно такой же рабочий набор (Eclipse с теми же 2 открытыми файлами, JBoss AS запущен в режиме отладки, Safari с 1 окном), все снова работает очень быстро.
действительно помогает переход на 1.6. Это ссылка для поиска файла eclipse.ini для Mac http://wiki.eclipse.org/Eclipse.ini