Advertisement
Guest User

Untitled

a guest
Mar 30th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.40 KB | None | 0 0
  1. class SearchWorker extends Worker {
  2. public function run() {}
  3. }
  4.  
  5. class Search extends Thread {
  6. public $data;
  7.  
  8. public function __construct($data)
  9. {
  10. $this->data = $data;
  11. }
  12.  
  13. public function run()
  14. {
  15. $ch = curl_init();
  16. curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  17. curl_setopt($ch, CURLOPT_URL, 'http://httpbin.org/get?search='.$this->data->s);
  18. $this->data->r = curl_exec($ch);
  19. curl_close($ch);
  20. }
  21. }
  22.  
  23. $pool = new Pool(4, 'SearchWorker');
  24. $data = [];
  25. $search = array('cats','dogs','cows','cars','trucks','booze','bottles','furniture','metal','elements');
  26.  
  27. foreach ($search as $i => $s) {
  28. $dataN = new Threaded();
  29. $dataN->i = $i;
  30. $dataN->s = $s;
  31. $data[] = $dataN;
  32. $pool->submit(new Search($dataN));
  33. }
  34.  
  35. while ($pool->collect());
  36.  
  37. $pool->shutdown();
  38.  
  39. class SearchWorker extends Worker {
  40. private $ch;
  41.  
  42. public function __construct()
  43. {
  44. $this->ch = curl_init();
  45. curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, TRUE);
  46. }
  47.  
  48. public function run() {}
  49. }
  50.  
  51. class Search extends Thread {
  52. public $data;
  53.  
  54. public function __construct($data)
  55. {
  56. $this->data = $data;
  57. }
  58.  
  59. public function run()
  60. {
  61. curl_setopt($this->worker->ch, CURLOPT_URL, 'http://httpbin.org/get?search='.$this->data->s);
  62. $output = curl_exec($this->worker->ch);
  63. $this->data->r = $output;
  64. }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement