php - fopen() zamrzá

HackForum

php - fopen() zamrzá | Lame#
Cau, nevite nekdo, proc v php jednou za cas zamrzne funkce na otevreni souboru z webu? Nastavil jsem default_socket_timeout na 1 sekundu a stejne to obcas zamrzne... schvalne si zkuste tenhle skript:


#!/usr/bin/php
#you need to install php5-cli (deb)
< ?php

ini_set('default_socket_timeout',1);
set_time_limit(0);
//$url='[link]';
$url='[link]';
while(1) {
@file_get_contents($url, false, null, 0, 10000);
echo "#";
}

?>


Pisu WebCrawler a tohle je uz jediny, na cem mi to zamrza, jestli vas nic nenapadne, budu na to muset udelat wrapper, kterej ho bude vzdycky restartovat, protoze php moc nepodporuje thready (ty jako znate treba z WinAPI) a pcntl_fork() -nebo jak se to menuje- neni moc prenositelny...

Kazdopadne dik za radu...

----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link]

(odpovědět)
Harvie | E-mail | Website | ICQ 28378297824.10.2007 17:04
re: php - fopen() zamrzá#
Jo a ty url, co sem tam dal, tak to sou naky na kterejch mi ten crawler zrovna nevim proc zamrznul, chvili to bezi, ale pak se to stejne zasekne...

----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link]

(odpovědět)
Harvie | E-mail | Website | ICQ 28378297824.10.2007 17:05
re: php - fopen() zamrzá#
Taky sem zjistil, že to vysí na volání poll(), výpis z debugeru najdete v bugreportu, který jsem postnul na php.net: [link]

----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link]

(odpovědět)
Harvie | E-mail | Website | ICQ 28378297824.10.2007 20:20
re: php - fopen() zamrzá#
Mno asi si budu muset počkat až to spraví, protože v PHP4 to funguje normálně...

----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link]

(odpovědět)
Harvie | E-mail | Website | ICQ 28378297825.10.2007 14:19

Zpět
Svou ideální brigádu na léto najdete na webu Ideální brigáda
 
 
 

 
BBCode