Подобный Perfmon для Linux?

Поскольку Date реализует Comparable , он имеет метод compareTo, как String.

Итак, ваш пользовательский Comparator может выглядеть так:

public class CustomComparator implements Comparator {
    @Override
    public int compare(MyObject o1, MyObject o2) {
        return o1.getStartDate().compareTo(o2.getStartDate());
    }
}

Метод compare() должен возвращать int, поэтому вы не можете напрямую вернуть boolean, как вы планировали в любом случае.

Ваш код сортировки будет примерно таким, как вы написали:

Collections.sort(Database.arrayList, new CustomComparator());

Немного более короткий способ написать все это, если вам не нужно повторно использовать ваш компаратор должен записать его как встроенный анонимный класс:

Collections.sort(Database.arrayList, new Comparator() {
    @Override
    public int compare(MyObject o1, MyObject o2) {
        return o1.getStartDate().compareTo(o2.getStartDate());
    }
});

Поскольку

Теперь вы можете написать последнее пример в более короткой форме с использованием лямбда-выражения для Comparator:

Collections.sort(Database.arrayList, 
                        (o1, o2) -> o1.getStartDate().compareTo(o2.getStartDate()));

И List имеет метод sort(Comparator) , поэтому вы можете сократить это еще больше:

Database.arrayList.sort((o1, o2) -> o1.getStartDate().compareTo(o2.getStartDate()));

Это такая распространенная идиома, что встроен метод для генерации Comparator для класса с Comparable:

Database.arrayList.sort(Comparator.comparing(MyObject::getStartDate));

Все это эквивалентные формы.

15
задан Daniel Silveira 6 December 2008 в 00:16
поделиться

4 ответа

Программа "вершина" делает большую часть из этого. Это не обрабатывает сетевой трафик все же.

Редактирование:

, Если необходимо зарегистрировать эту информацию для обработки/анализа сообщения, можно использовать стандартный пакет "SAR", чтобы сделать это. Это поддерживает МНОГО различных показателей производительности включая: диск, CPU, память, сеть, и т.д.

страница справочника

SAR
9
ответ дан 1 December 2019 в 02:29
поделиться

DStat является моим любимым для таких инструментов. От он - страница:

  • Объединения vmstat, iostat, ifstat, netstat информация и больше
  • Выставочная статистика в точно тот же период времени
  • Позволяет/заказывает счетчики, как они имеют большую часть смысла во время анализа/поиска и устранения неисправностей
  • Сменная платформа обрабатывать дополнительные счетчики. (Качество Wi-Fi, например)

я люблю его! Это определенно более гибко (и легче использовать), чем SAR, у нас просто есть dstat, пишущий в файл регулярно.

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

При поиске способа контролировать этот материал на серверах необходимо смотреть на контролирующую платформу как Zabbix. Это позволит Вам контролировать все виды интересных вещей о Вашей системе и, с плагинами, Вашем приложении - а также хранящие данные тенденции сроком на время и разрешение Вам предупредить на триггерных порогах и таком.

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

Я - огромный поклонник gkrellm, который упаковывает огромный объем информации в маленькую вертикальную панель на Вашем мониторе. Это настраивается; я получаю использование ЦП, дисковое использование, использование памяти, температуры , сетевой трафик, и т.д. Когда моя система становится медленной, я знаю немедленно, является ли это ЦП, диск, память или сетевое соединение. Информационный дизайн довольно хорош; я сказал бы, что объем информации на пиксель высок. И в отличие от 'вершины' можно обычно позволять себе оставить это открытым на одной стороне экрана. ('вершина' использует слишком много экранной недвижимости, которую оставят открытой все время.)

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

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