LINUX.ORG.RU — Русская информация об ОС Linux

Сообщения php-coder

Есть ли смысл в private static методах?

Форум - Development

Здравствуйте!

Возник вопрос по поводу того имеет ли смысл объявлять метод как static, если он является приватным и вызывается только из публичного не статичного метода?

Вот пример на РНР:

class Foo {
    
    public function doRightThing() {
        $smth = self::getSomething();
        ...
    }

    private static function getSomething() {
        return array(/* ... */);
    }

}

Здесь getSomething() объявлен как static, но его можно убрать ведь метод никогда не будет вызван без создания экземпляра класса.

Есть мнение, что static здесь только мешает восприятию кода.

Что скажите?

php-coder (14.01.2011 7:24:53)

[PostgreSQL] Жрёт процессор

Форум - Admin

Здравствуйте!

Есть сервер с 5-тым Centos-ом с установленным PostgreSQL 8.1. В top постоянно висят несколько процессов postmaster, которые в сумме загружают процессора на ~40%. Причем база не большая, PG обслуживает только локальных клиентов, который тоже не много. В логи смотрел, ничего криминального.

Кто-нибудь сталкивался? Как это можно продебажить/исправить?

Спасибо заранее.

php-coder (07.09.2010 15:42:03)

[ubuntu] 2 видеокарты + 2 монитора

Форум - Desktop

Здравствуйте!

Есть 2 видеокарты: интегрированная intel и внешняя nvidia:

>>-----Цитата---->>

$ lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation Auburndale/Havendale Integrated Graphics Controller (rev 12) 01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400 GS (rev a1)

<<-----Цитата----<<

Всё это на Ubuntu 9.04

Хочется, чтобы работали оба монитора, в то время как сейчас всё выводится на один.

Читал про TwinView, но, я так понял, что использовать его не получится, потому что мониторы подключены к разным видеокартам. Я прав?

Ещё что-то слышал про Xinerama, она мне подойдёт?

Что из этого выбрать и как настраивать?

Заранее благодарю!

P.S. Готов предоставить вывод любых команд и содержимое конфигов.

php-coder (08.07.2010 9:14:07)

Некоторый код не отображается в Opera

Форум - Web-development

Здравствуйте!

Некоторая страница нормально отображается в Firefox, и ненормально в Opera. В частности в Operе совсем не отображаются некоторые элементы страницы. Причем, если эту страницу сохранить на компьютер и открыть снова, то эти элементы видны.

Посоветуйте, пожалуйста, в какую сторону копать, как разбираться и что это может быть?

Заранее спасибо!

php-coder (21.09.2009 7:53:33)

Кто отображает сообщения от pidgin в правом верхнем углу?

Форум - Desktop

Здравствуйте!

На работе установлена Ubuntu 9.04 и когда приходит сообщение, то в правом верхнем углу оно отображается. Довольно удобно. Вопроса два:

- как отключить это на Ubuntu 9.04 (на работе это несколько неудобно)

- как включить это на ALT Linux (дома это удобно)

Собственно, мне бы узнать кто за это отвечает? Я так понимаю, что не Pidgin? Я не нашел в нём никаких дополнительных настроек на эту тему. Слышал про notification-daemon, думал, что это он делает, но в АЛЬТе его установил и что-то Pidgin сообщений не отображает.

Заранее спасибо!

php-coder (29.06.2009 0:26:58)

Как в Иксах эмулировать нажатия клавиш через COM-порт?

Форум - Development

Здравствуйте!

Есть задача эмулировать нажатия клавиш в Иксах, через COM-порт. К стыду своему, я слабо представляю как это должно работать на низком уровне.

Интересуют следующие вопросы:

- есть ли готовые программы (которые бы транслировали приходящие с ком-порта данные во что-то, что воспринималось бы Иксами как нажатия клавиш)

- если нет подобных программ, то как лучше это написать самому? Должно ли быть это модулем Иксов? Если да, то может кто знает примеры и ссылки по программирования модулей?

Пожалуйста, подскажите в какую сторону копать.

Заранее благодарю!

php-coder (18.02.2009 10:56:29)

[SHELL] Проверить, что переменная это число

Форум - Development

Здравствуйте!

Есть следующий кусок кода:

elif ! printf '%s\n' "$1" | grep '^[[:digit:]]\+$'; then
echo "Wrong number of test ($1). Should be a digit! Skipped." >&2
shift

Но при запуске в стандартном sh на SunOS вижу ругань:

./run_test.sh: !: not found

Как бы этот код сделать более портабельным?

(Пробовал grep -v, пробовал менять регулярное выражение на '^[^[:digit:]]\+$', но пока ничего не вышло..)

Заранее спасибо!

php-coder (25.01.2009 11:03:12)

Doxygen: string vs std::string

Форум - Development

Здравствуйте!

Как бы объяснить Doxygen'у, что string в файле реализации и std::string в хедере это один и тот же тип?

Искал в гугле, но безрезуальтатно. Нашел опцию BUILTIN_STL_SUPPORT, но она совсем другое включает.

>>>

php-coder (30.04.2008 17:23:32)

test.sh: bad substitution

Форум - Development

Здравствуйте!

При попытке запустить скрипт на SunOS 5.10 в стандартном sh заткнулся на одной ошибке. Вот упрощенный вариант:

#!/bin/sh
NO=
if [ ${#1} -le 2 ]; then
   NO="`printf '%03d\n' $1`"
else
   NO="$1"
fi
echo $NO

При попытке запустить:

$ ./test.sh
./test.sh: bad substitution

$ sh -x ./test.sh
NO=
./test.sh: bad substitution

Как это исправить?

Пробовал выяснять длинну строки с помощью expr, но тоже не получилось.

Заранее спасибо!

>>>

php-coder (22.04.2008 14:38:38)

Условный вызов AC_CHECK_HEADER

Форум - Development

Здравствуйте!

Хочу сделать следующее: в configure скрипте, если указана опция --enable-boost проверить на присутствие хедер boost/scoped_array.hpp (а в будущем и некоторые другие) и хотелось бы, чтобы если его нет, то configure "падал".

Для начала, чтобы просто искалось:

AC_MSG_CHECKING(whether we are using boost)
AC_ARG_ENABLE(boost,
    AS_HELP_STRING([--enable-boost], [use boost library during build]),
    [enable_boost=yes],
    [enable_boost=no])
AC_MSG_RESULT($enable_boost)
if test "$enable_boost" = "yes"; then
    # TODO: configure should fails if one of needed headers not found
    AC_CHECK_HEADER([boost/scoped_array.hpp])
    AC_DEFINE([ENABLE_BOOST], [], [use boost library])
fi

С --enable-boost всё работает, ищется, а вот без опций configure не проходит:

checking whether we are using boost... no
configure: error: conditional "am__fastdepCC" was never defined.
Usually this means the macro was only invoked conditionally.

Как бы победить? Или это невозможно и хедеры нужно чекать безусловно?

В гугле искал, но там всё больше находились configure скрипты, которые выдавали эту ошибку.

Заранее спасибо за помощь.

>>>

php-coder (15.04.2008 20:01:59)

[C] Как получить статус завершения треда

Форум - Development

Здравствуйте!

Не могу понять как правильно вернуть из треда его статус завешения и как этот статус получить в main().

pthread_exit() или return из треда должны возвращать указатель на void. Но при этом переменная не может быть локальной, в итоге остаётся либо возвращать адрес глобальной переменной, либо выделять память на куче и возращать адрес на неё.

Второе очень странно и не логично, потому что городить вызовы malloc(), и потом free() в главном потоке, только для того чтобы только получить код завершения это overhead.

А если возвращать указатель на глобальную переменную, то какой смысл в этих pthread_exit() если можно просто установить глобальную переменную в нужнозе значение и всё?

Как-то нелогично IMHO сделано. Объясните, пожалуйста.

P.S. Был в гугле со словами "pthread_exit() get status"

>>>

php-coder (28.01.2008 9:39:29)

Fluxbox 1.0.0 released!

Новости - OpenSource
Группа OpenSource

После четырёх с половиной лет разработки вышла новая стабильная версия лёгкого и быстрого оконного менеджера Fluxbox -- 1.0.0!

Добавлены новые темы, обновлены переводы, возвращены обратно внешние табы, исправлено множество ошибок, обновлён ман, добавлены новые команды...

Поздравляю всех пользователей этого WM со столь замечательным и долгожданным событием! Ура! :)

>>> Список изменений

>>> Скачать!

php-coder (09.10.2007 10:30:18)

Что значит warning: creating a DT_TEXTREL in a shared object?

Форум - Development

Здравствуйте!

При сборке разделяемой библиотеки вижу предупреждение:

gcc -Wall -W -g -c -o src/drop/libkatrin-drop.o src/drop/libkatrin-drop.c -I./src
gcc -Wall -W -g -c -o src/utils/utils.o src/utils/utils.c -I./src
gcc -Wall -W -g -c -o src/conf/conf.o src/conf/conf.c -I./src
gcc -Wall -W -g -shared -fPIC -Wl,-export-dynamic -o ./build/libkatrin-drop.so src/drop/libkatrin-drop.o src/utils/utils.o src/conf/conf.o
/usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Что означает это предупреждение и как его побороть? (В гугле искал, но ответа не нашел.)

Надеюсь на вашу помощь. Заранее благодарю!
php-coder (25.08.2007 21:54:24)

Запуск иксовой программы по SSH

Форум - Admin

Здравствуйте!

Устал уже читать пользоваться багзиллой в links'е и посему очень бы хотел получить ответ на следующий вопрос: возможно ли запустить какой-нибудь графический браузер у себя на машине по SSH, причем между моим компом и тем, на который я хожу есть ещё один промежуточный и на него я тоже по SSH. Короче говоря, я со своей машины A иду по SSH на B, а потом с B опять же по SSH на С. И вот с машины C я и хотел бы запустить браузер.

Как это сделать? Пожалуйста, подскажите.

php-coder (08.08.2007 14:56:26)

Редизайн сайт NetBSD.org

Новости - OpenSource
Группа OpenSource

Официальный сайт проекта NetBSD подвергся редизайну.

>>> Оценить

php-coder (06.07.2007 9:18:47)

Помогите написать правило для procmail

Форум - General

Здравствуйте!

Хочу сделать, чтоб procmail сбрасывал в отдельный файл хедеры от всех писем, поискал в инете, почитал доку, пытаюсь сделать так:

:0ch
| >> testmail

Но в файле testmail никаких хедеров не появляется. Подскажите, что я сдела не так?

Спасибо.

php-coder (19.11.2006 19:00:37)

OpenBSD справляет юбилей -- 11 лет!

Новости - BSD
Группа BSD

18 октября OpenBSD исполнилось 11 лет.

Чтобы ни говорили на ЛОРе, а эта операционная система жива, разивается и всё ещё безопасна :)

Ура!

>>> Happy Birthday OpenBSD!

php-coder (18.10.2006 22:07:26)

Создание функциональных тестов

Форум - Development

Здравствуйте!

Задумался над идеей добавления тестов для своей программы. Посмотрел на DejaGNU, день убил, но так и не смог разобраться, в частности с Expect'ом. Решил написать что-нить простенькое под себя. Пишу на шелле. Банально сохраняю вывод программы в файл и сравниваю с эталонным.

Хотелось бы услышать советов/предложений о том, как лучше писать тесты, на чем. Я не против использования сторонней программы, но главный критерий -- простота, чтобы я быстро смог разобраться и в т.ч. понимал, что она делает.

Спасибо.

php-coder (31.08.2006 10:21:29)

Привет из тёмной консоли!

Галерея - Скриншоты

Привет из тёмной консоли!

После покупки ноута был сильно расстроен, что на нём отсутствует клавиша Win -- на неё у меня были навешаны почти все хоткеи. Первое время сидел в консоли (благо заработал framebuffer) и время от времени пытался настроить клавишу Fn. Потом понял, что это невозможно и смирился -- сижу в консоли. Как правило, хватает 4ёх. Слушаю музыку с помощью mpd+ncmpc. Пишу код в vim'е (7ой просто великолепен!), отлаживаю и в SVN коммичу. zsh также очень помогает.

Кстати, на скриншоте в самом вверху можно увидеть фишку 7-ёрки -- табы :) Пока не очень активно их использую, но пытаюсь себя к ним приучить.

Тема delek (:colorsheme delek). (Синие полосы почему-то нисколько не бьют по глазам.)

P.S. Я не хакИр -- сам удивлён, что скатился до такого :-/

>>> Просмотр ( 1024x768, 25 Kb )

php-coder (10.07.2006 8:49:34)

Вышел Fluxbox 1.0rc!

Новости - OpenSource
Группа OpenSource

Сегодня Henrik Kinnunen, главный разработчик Fluxbox, сообщил о выходе новой версии оконного менеджера Fluxbox -- 1.0rc

Из самых значимых изменений стОит отметить возврат к внешним табам (как было в 0.1.14), улучшенная поддержка EWMH, а также множество исправленных багов. Также сообщается о полной поддержке UTF8 и, хочется надеяться, что проблем с кодировками больше не возникнет.

Список изменений: http://fluxbox.org/version-0.9.php

>>> Скачать!

php-coder (14.06.2006 10:46:59)

О Сервере - Правила форума
http://www.linux.org.ru/

Rambler's Top100 Рейтинг@Mail.ru