|
|
|
| В корне сайта есть скрипт count.php
А ситуация такая.
В одной из папок исполняется некий скрипт sk.php
Каким образом при испольнении скрипта sk.php запустить скрипт count.php ?
Не подключить скрипт count.php к крипту sk.php, и не перейти на count.php, а именно запустить скрипт count.php на одном из этапов исполнения скрипта sk.php и продолжить исполнение скрипта sk.php?
Иными словами, как при исполнении скрипта sk.php запустить второй процесс, алгоритм которого задан скриптом count.php ? | |
|
|
|
|
|
|
|
для: Владимир55
(01.01.2009 в 20:06)
| | Это называется многопоточность :)
На php, можно создать ещё третий скрипт , который включит (и получит раезультат) первый.
А в том третьем скрипте зарегистрировать shutdown_function, которая запросит второй.
Но это чисто теоретически :)
// и это , забыл сказать ,) третьий файл включать при помощи virtual() | |
|
|
|
|
|
|
|
для: xx77
(01.01.2009 в 20:36)
| | Не могли бы Вы показать реализацию многопоточности на примере указанных мною скриптов? | |
|
|
|
|
|
|
|
для: Владимир55
(02.01.2009 в 00:01)
| | Оказалось и правда в php нет многопоточности .
практически всё-равно php ждёт когда выполнится всё ,( хотя и показывает время выполнения как и было задумано теоретически.
До последнего всётаки я верил что многопоточность есть :) даже помнил что мне как-то удавалось нечто такое , оказалось ошибался :( | |
|
|
|
|
|
|
|
для: xx77
(02.01.2009 в 01:03)
| | Есть вариант запустить по http
Файл 1.php
<pre><?php
if($_SERVER['QUERY_STRING'] == '') {
// выполнилось условие, когда это нужно
$url = "subdomain.localhost";
$fp = fsockopen($url, 80);
if ($fp) {
$out = "GET /2.php HTTP/1.1\r\n"
."Host: $url\r\n"
."Connection: Close\r\n\r\n";
fwrite($fp, $out);
echo fread($fp, 12) . "\n";
fclose($fp);
}
}
?>
|
запускает файл 2.php ( адрес http://subdomain.localhost/2.php )
<?php
ignore_user_abort(1);
echo '1' . "\n";
flush(); // похоже обязательно
sleep(20);
file_put_contents('test.txt', 0x80000000000000001 ."\n");
// файл появляется попозже
?>
|
| |
|
|
|