Соответственно и получается ситуация, когда — форк — правый костыль, демон — левый костыль, но одновременно можно работать на одном из них и многопоточность на пхп слегка хромает. А иначе никак, CGI же.
Я сам PHP-разработчик, люблю его и прекрасно знаю, что умеет язык, насколько он могуч, это и написано в моей схеме выполнения под пунктом 2 :)
Но чем кончаются подобные пути его использования и чем они осложнены я написал в предыдущей ветке, чуть выше.
К сожалению, к великому сожалению, он для этого не предназначен.
Да и проблема надумана. Многопоточность в сложных системах на пхп рекрасно решается в рамках нескольких процессов. Нужен тред? Запускаем его отдельным процессом — и волки целы и овцы выполняются.
А в каком контексте, как правило, упоминается необходимость использования потоков? В большинстве случаев в контексте создания сервера\демона. Другие сценарии с функционалом пхп малосостоятельны.
Ну там же, в исходном моем сообщении, еще присутствует такая характеристика, как скриптовый. Не стоит придираться к вырванному из контекста слову, в комплексе все становится куда прозрачнее :)
Вступление из статьи на вики
Сцена́рный язы́к (англ. scripting language, в русской литературе принято название язык сценариев) — высокоуровневый язык программирования для написания сценариев — кратких описаний действий, выполняемых системой. Разница между программами и сценариями довольно размыта. Сценарий — это программа, имеющая дело с готовыми программными компонентами[1].
Согласно Джону Устерхауту, автору языка Tcl, высокоуровневые языки можно разделить на языки системного программирования (англ. system programming languages) и сценарные языки (англ. scripting languages). Последние он также назвал склеивающими языками (англ. glue languages) или языками системной интеграции (англ. system integration languages). Сценарии обычно интерпретируются, а не компилируются[2], хотя сценарные языки программирования один за другим обзаводятся JIT-компиляторами[3][4][5].
В более узком смысле под скриптовым языком может пониматься специализированный язык для расширения возможностей командной оболочки или текстового редактора и средств администрирования операционных систем[6].
Естественно, есть такой функционал (как мы видим, в бибилиотеке PECL). На хабре даже были статьи на тему использования pthreads. Но.
Главная проблема пхп в виде демона состоит в том, что он не деаллокатит занятую раднее память. Если один раз пикануло, то в памяти у вас будет висеть жиртрест, использующий малые проценты от аллокаченной памяти.
Но чем кончаются подобные пути его использования и чем они осложнены я написал в предыдущей ветке, чуть выше.
К сожалению, к великому сожалению, он для этого не предназначен.
Да и проблема надумана. Многопоточность в сложных системах на пхп рекрасно решается в рамках нескольких процессов. Нужен тред? Запускаем его отдельным процессом — и волки целы и овцы выполняются.
типичный скрипт.
Согласно Джону Устерхауту, автору языка Tcl, высокоуровневые языки можно разделить на языки системного программирования (англ. system programming languages) и сценарные языки (англ. scripting languages). Последние он также назвал склеивающими языками (англ. glue languages) или языками системной интеграции (англ. system integration languages). Сценарии обычно интерпретируются, а не компилируются[2], хотя сценарные языки программирования один за другим обзаводятся JIT-компиляторами[3][4][5].
В более узком смысле под скриптовым языком может пониматься специализированный язык для расширения возможностей командной оболочки или текстового редактора и средств администрирования операционных систем[6].
Главная проблема пхп в виде демона состоит в том, что он не деаллокатит занятую раднее память. Если один раз пикануло, то в памяти у вас будет висеть жиртрест, использующий малые проценты от аллокаченной памяти.
Юнивёрсал удаляет бутлеги, видимо прибыли падают.
Mail.ru@ОхранникСтоит отметить что еще вайд откручивается, там тоже не забывать почистить.
Будем надеяться, что научатся разуплотнять :) Ибо за оптикой, наверняка, будут применять сию технологию к радио.