Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
phppthreads:threaddosen';t异步执行来自其他对象的方法_Php_Multithreading_Pthreads - Fatal编程技术网

phppthreads:threaddosen';t异步执行来自其他对象的方法

phppthreads:threaddosen';t异步执行来自其他对象的方法,php,multithreading,pthreads,Php,Multithreading,Pthreads,好像我这里有一些编码错误,也许有人能帮我。 例如: 通常情况下,由于这是线程化的,我希望这项工作是异步完成的,但事实并非如此。它一直等到连接得到响应,我做错了什么 谢谢。您是否尝试将其放在同一个类中,以便将fsockopen放在类“Main”的构造函数中?类测试{ public function check() { $fp = fsockopen('10.10.5.55','80', $errno, $errstr, 1.5); } } class Main extends

好像我这里有一些编码错误,也许有人能帮我。 例如:

通常情况下,由于这是线程化的,我希望这项工作是异步完成的,但事实并非如此。它一直等到连接得到响应,我做错了什么


谢谢。

您是否尝试将其放在同一个类中,以便将fsockopen放在类“Main”的构造函数中?

类测试{

  public function check() {
    $fp = fsockopen('10.10.5.55','80', $errno, $errstr, 1.5);
  }

}

class Main extends Thread {

  public function run() {
    $N = new test();
   while(true){
     $N->check();
  }

  }

}

$N = new Main();
$N->start();

现在,每当Parralel

没有解决问题时,它都会运行。即使我将函数移到Main中,我仍然存在问题。Dev告诉我,这是我的代码的问题。为什么不让curl在连接超时1秒的情况下获取请求呢?
  public function check() {
    $fp = fsockopen('10.10.5.55','80', $errno, $errstr, 1.5);
  }

}

class Main extends Thread {

  public function run() {
    $N = new test();
   while(true){
     $N->check();
  }

  }

}

$N = new Main();
$N->start();