2016-11-02 31 views
3

好像我在這裏有一些編碼錯誤,也許有人可以幫助我。 例子:PHP pthreads:線程dosen't執行其他對象的方法async

class test { 

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

    } 

    class Main extends Thread { 

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

    } 

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

通常因爲這是螺紋,我所期望的,該作業異步完成,但事實並非如此。它等到連接得到迴應,我做錯了什麼?

謝謝。

+0

爲什麼不直接做1秒的連接超時捲曲GET請求? – num8er

回答

0

你有沒有嘗試把它放在同一個類中,所以把fsockopen放到類「Main」的構造函數中?

+0

這不能解決問題。即使我將這個函數移到Main中,我仍然有這個問題。 Dev告訴我,它是我的Code的一個問題。 – Ne00n

0

類測試{

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(); 

現在,這將每次運行parrallel

相關問題