![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Riddick |
|
||||
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 24.6.2007 Репутация: нет Всего: нет |
На пхп многопоточности нет ФАКТ.
Как вариант по никс*
В этом случае остается контролировать выполнение каждого экземпляра скрипта, что весьма неудобно и этот вопрос я думаю решаем с помощью Ajax (как вариант). Для особо придирчивых уточняю что понятьи поток здесь рассмотрено в контексте "Экземпляр скрипта"; Поехали дальше. Многие пишут под виндовозом. С виндой есть другой вариант - а именно командная строка
В этом примере каждый экземпляр скрипта будет открыт в видимой командной строке, что позволяет смотреть работу скрипта. Вот типа и все. Есть еще вариант запускать экземпляры скрипта через сокеты, где количество сокетов будет равно "количеству потоков"; Да и насчет форков. Сильно не усердствуй с ним на пхп (сильная нагрузка на сервер) - это прерогатива Perl. ![]() |
||||
|
|||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
Riddick, ты путаешь понятия потока и процесса. Это все равно, что путать палец с... мордой.
|
|||
|
||||
Riddick |
|
|||
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 24.6.2007 Репутация: нет Всего: нет |
Я смотрел на контекст вопроса ТС, и ему думаю подойдет то что я предложил.
А вот как он рассмотрит это - дело уже его. To -> nerezus Я же сказал на пхп многопоточности нет - то что я описал это эмуляция - но смотря чего и как на это смотреть. Если рассматиривать правильно то каждый раз мы порождаем новый процесс - работающий в один поток - отсюда можно сделать вывод (и он правильный)что мы занимаемся не многопоточностью а плодим процессы. С другой стороны если рассмотреть скрипт порождающий процессы (а процесс работает в один поток) основным и в конечном итоге порождающий потоки(пусть с возникновением новых процессов), то выходит что скрипт многопоточен. Я здесь не пытаюсь оспорить понятия многопоточности так как многопоточность должна быть и есть в одном процессе, а у нас процессов столько же сколько и потоков, просто если подойти к вопросу философски то все можно "притянуть за уши"; |
|||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
Процессы - это эмуляция потоков? Порой кажется, что я в своей жизни пропустил что-то важное... А может и не я.
|
||||
|
|||||
Riddick |
|
|||
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 24.6.2007 Репутация: нет Всего: нет |
![]() |
|||
|
||||
Pori |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 50 Регистрация: 10.9.2007 Репутация: нет Всего: 1 |
nerezus, как вариант, юзать темп файл для хранения общих переменных ;)
Чего ты так взъелся? Никто ж с тобой не спорит, что нету на PHP многопоточности. Но зайди на любую фриланс биржу - каждому второму заказчику скрипта на PHP подавай многопоточность. Им же не объяснишь =) Вот и приходится выкручиваться как получиться, а не как теоретически правильно ;) |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
Pori, и? каждую строчку оборачивать кодом с чтением этого файла? С блокировкой его?
Так если он блокируется, многопоточности то и не будет ;) А если не блокируется - то данные испортятся.
|
|||
|
||||
Pori |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 50 Регистрация: 10.9.2007 Репутация: нет Всего: 1 |
Конешн с блокировкой, а как иначе? =)
Тормозить процесс пока не получит доступ к файлу, а потом вперед. Не известно же в какой момент процессы запросят доступ к файлу. Может, правдо, и повезти - выстроятся в конвейер ;) Да, конечно, это не многопоточность. Да и, как правило, для того, что требуют заказчики с пометкой "должно работать многопоточно" многопоточность совершенно не требуется. Недавно попался мне такой - я предложил в качестве многопоточности запускать скрипт несколько раз по крону - согласился ;) Вот и вся многопоточность на PHP. |
|||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
|
||||
|
|||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 1 Всего: 73 |
Предложим вместо нее девственницу ![]() ![]() -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
NewDima |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
Есть одна интересная вещь
|
|||
|
||||
Pori |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 50 Регистрация: 10.9.2007 Репутация: нет Всего: 1 |
ну так мы это, вроде, здесь разобрали. Просто там все структурированно и довольно неплохо написано
|
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Для профи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |