2013-04-17 80 views
0

我在用mysql的框架Drupal 7和環境Windows。我有一個問題,我想要在PHP中的Asynchronus調用,我必須更新數據庫中的某些值,但我不想停止執行一個函數。即使數據庫處理正在進行,函數也應該完成並返回值。用Drupal 7在php中多線程

我在想線程方法,其中一個線程正在更新數據庫,其他線程將完成並返回函數。在PHP中可能嗎?如果是的話那怎麼樣?

+1

Ajax將工作? –

+0

看看drupal批處理api – jantimon

回答

0

截至目前,有關於PHP多線程的一千個問題,他們都在Drupal上「工作」。 PHP中不支持多線程。我敢打賭,你需要使用這個功能。

passthru("/usr/bin/php /path/to/script.php ".$argv_parameter." >> /path/to/log_file.log 2>&1 &"); 

這將使它保持在後臺運行並將結果輸出到您的日誌。

0

另一種選擇是HTTP請求的並行線程&庫模塊:https://www.drupal.org/project/httprl

我認爲你需要的函數是httprl_queue_background_callback(),然後是httprl_send_request()。查看示例(API文檔不太好)。