Новые книги

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

Уже в процессе работы с книгой вы сможете начать применять предложенные методы и зарабатывать!
Эта книга посвящена теории колорита в живописи. Но возможна ли вообще такая теория? Чувство цвета едва ли не самое субъективное из человеческих чувств. О чем здесь можно говорить и спорить?

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

Научная теория восприятия цвета существует. Она нужна. Но нужна ли и возможна ли теория колорита, теория живописи и вообще теория искусства — этой «субъективнейшей» области человеческой практики, теория проявлений редкого таланта?

Мне приходилось слышать возражения вроде следующего.

Мы понимаем, что теория машин и механизмов нужна. На основе этой теории можно построить хорошие машины. Но разве возможно на основе теории живописи написать хорошие картины, и в частности на основе теории колорита найти яркие цветовые решения? Это дело таланта. Теория искусства, по мысли подобных скептиков, — бессмысленная затея.

Ответим так. Представление о связи теории и практики у подобных скептиков наивно. Существуют теории языка и теории отдельных языковых форм — фонетика, морфология, синтаксис. Но никому не приходит в голову, что задача теории языка — создавать новые языки. Кстати сказать, — к стыду работников изофронта — существуют теория литературы, поэтика и теория музыки, которые также не создают эталонов для хороших повестей, поэм и симфоний и не ставят себе подобных нелепых задач.

Теория языка нужна для обучения языку, для того, чтобы охранять чистоту и помогать правильному и гибкому использованию его форм, для того чтобы легче усваивать структуру и оттенки чужих языков. Разве теория живописи, и в частности теория колорита, не может помочь решению аналогичных практических задач? Отрицание связи между наукой и художественной практикой противоречит традициям русского передового искусства. К. С. Станиславский, формулируя понятия сценического искусства, выражал сожаление, что психология не дала в руки актеру этих понятий. Он сознавал — в противоположность снобам от искусства — несовершенство своих попыток говорить о законах сцены и упрекал ученых в отсутствии нужной теории 1.

Так говорил еще Станиславский. Что же должны сказать мы, в наши дни?

Исключительное значение проблемы цвета для живописи всегда остро чувствовали передовые советские художники. Вопросы цвета занимали видное место в творческих дискуссиях 20-х и 30-х годов. Они не раз возникали и в послевоенные годы. Однако наибольшую остроту эти вопросы приобретают в наши дни.

Обработка Соединений

Учебник РНР
Назад Вперёд

Глава 21. Обслуживание соединений

Примечание: последующая информация применяется к версиям 3.0.7 и новее.

Статус соединения обслуживается в PHP внутренне. Есть три возможных состояния:

  • 0 - NORMAL

  • 1 - ABORTED

  • 2 - TIMEOUT

Когда PHP-скрипт запущен нормально, активен статус NORMAL. Если удалённый клиент отсоединяется, включён флаг ABORTED. Отсоединение удалённого клиента происходит чаще всего тогда, когда пользователь нажимает кнопку STOP браузера. Если действует ограничение времени, установленное PHP (см. set_time_limit()), включён флаг TIMEOUT.

Вы можете решить, вызывает ли отключение клиента прерывание работы вашего скрипта. Иногда бывает удобно выполнять ваши скрипты до конца, даже если отсутствует удалённый браузер, принимающий вывод. По умолчанию, однако, ваш скрипт прерывает работу, когда удалённый клиент отсоединяется. Это поведение может быть установлено директивой ignore_user_abort в файле php.ini, а также через соответствующую "php_value ignore_user_abort" Apache .conf-директиву или функцией ignore_user_abort(). Если вы не указали PHP игнорировать прерывание работы пользователем и пользователь это сделал, ваш скрипт прекращает работу. Единственное исключение, когда вы зарегистрировали shutdown-функцию с использованием register_shutdown_function(). Когда при этом удалённый пользователь нажимает кнопку STOP, ваш скрипт в следующий момент пытается вывести что-нибудь, PHP обнаруживает, что соединение было разорвано, и вызывается shutdown-функция. Эта shutdown-функция будет также вызвана в конце нормального завершения работы вашего скрипта, поэтому, для того чтобы сделать что-нибудь другое в случае отсоединения клиента, вы можете использовать функцию connection_aborted(). Эта функция возвратит TRUE, если соединение было разорвано.

Выполнение вашего скрипта может быть также прервано встроенным таймером скрипта. Таймаут по умолчанию составляет 30 секунд. Он может быть изменён путём использования директивы max_execution_time в php.ini или соответствующей "php_value max_execution_time" Apache .conf-директивой, а также функцией set_time_limit(). Когда таймаут заканчивается, работа скрипта прервётся, и, как и в случае с отсоединением клиента, если shutdown-функция была зарегистрирована, она вызывается. В этой shutdown-функции вы можете проверить, вызвал ли таймаут данную shutdown-функцию, с помощью функции connection_timeout(). Эта функция возвращает TRUE, если таймаут вызывал эту shutdown-функцию.

Единственное, что необходимо отметить, это что статусы ABORTED и TIMEOUT могут быть активны одновременно. Это возможно, если вы укажете PHP игнорировать пользовательские прерывания соединения. PHP будет отмечать тот факт, что пользователь может разорвать соединение, но скрипт продолжит работу. Если затем истечёт таймаут, скрипт будет прерван, а ваша shutdown-функция, если имеется, будет вызвана. В этой точке вы можете увидеть, что функции connection_timeout() и connection_aborted() возвращают TRUE. Вы также можете проверить оба статуса в одном вызове connection_status(). Эта функция возвращает битовое поле активных статусов. Поэтому, если оба статуса активны, она, к примеру, возвратит 3.


Назад Оглавление Вперёд
Использование удалённых файлов Вверх Постоянные соединения с БД