HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Это многопоточность ? ))
  #1  
Старый 27.03.2009, 14:55
Велемир
Banned
Регистрация: 19.06.2006
Сообщений: 1,239
Провел на форуме:
1469161

Репутация: 142


Отправить сообщение для Велемир с помощью ICQ
По умолчанию Это многопоточность ? ))

PHP код:

<?php

    $urls 
= array();
    
$urls[0] = "http://www.wiw.ru";
    
$urls[1] = "http://www.google.ee";
    
$urls[2] = "http://www.google.ee";
    
$urls[3] = "http://www.google.ee";
    
$urls[4] = "http://www.google.ee";
    
$urls[5] = "http://www.google.ee";
    
$urls[6] = "http://www.google.ee";
   
    
$mh curl_multi_init();

    foreach (
$urls as $i => $url) {
      
$conn[$i] = curl_init(trim($url));
      
curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER1);
      
curl_multi_add_handle ($mh,$conn[$i]);
    }

    
// start performing the request
    
do {
      
$mrc curl_multi_exec($mh$active);
    } while (
$mrc == CURLM_CALL_MULTI_PERFORM);

    while (
$active and $mrc == CURLM_OK) {
      
// wait for network
      
if (curl_multi_select($mh) != -1) {
                
// pull in any new data, or at least handle timeouts
                
do {
              
$mrc curl_multi_exec($mh$active);
                } while (
$mrc == CURLM_CALL_MULTI_PERFORM);
      }
    }

    if (
$mrc != CURLM_OK) {
      print 
"Curl multi read error $mrc\n";
    }

    
// retrieve data
    
foreach ($urls as $i => $url) {
      if ((
$err curl_error($conn[$i])) == '') {
                
$res[$i]=curl_multi_getcontent($conn[$i]);
      } else {
                print 
"Curl error on handle $i$err\n";
      }
      
curl_multi_remove_handle($mh,$conn[$i]);
      
curl_close($conn[$i]);
    }
   
    
curl_multi_close($mh);

    
print_r($res);

?>
Погуглил и решил проверить.Вроде работает,но не отображается ничего таск менеджере.Это и есть многопоточность,или же это иллюзии?)
 
Ответить с цитированием
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ