情况是这样:我现在需要先调用gearman来处理都图片下载的任务,同时给gearman一个回调函数,当gearman执行完毕之后,它会调用我的回调函数来返回数据给我。
问题是:我使用doBackGround的函数时,输出$result,可以看到:"H:ip:xxx.xxx.xxx.xxx:number",这说明gearman已经被调用了吧,但是我在回调函数里面创建的文件并没有找到,我不知道问题出在哪里,求大神帮忙解答一下,谢谢了。
    
public function tryGearman() {
        $url = "url1\n";
        $url1 = "url2\n";
        $url2 = "url3\n";        $urlFile = fopen("url.txt","w") or die("can not open the file");
        fwrite($urlFile,$url);
        fwrite($urlFile,$url1);
        fwrite($urlFile,$url2);
        fclose($urlFile);        $gmclient = new GearmanClient();        $gmclient->addServer();        $gmclient->setCompleteCallback('getProData');        $result = $gmclient->doBackground('upload','{"callback_url":"https://my_web_app_realm_name/index.php?c=Game&a=getProData","input_file":"/usr/local/test/url.txt"}');        echo $result;
    }    public function getProData($data) {
        $urlFile = fopen("result.txt","w") or die("can not open the file");
        fwrite($urlFile,$data);
        fclose($urlFile);
    }