SORU
5 EYLÜL 2008, Cuma


php bir arka plan işlemi çalıştırmak

Ben lazım çalıştırmak için bir dizin kopyala üzerine bir Kullanıcı işlemi, ama dizinler oldukça büyük, çok isterim yapabilmek böyle bir eylem olmadan kullanıcı olduğunun farkında olmak zaman alır için kağıt üzerinde.

Herhangi bir öneriniz çok takdir olurdu.

CEVAP
5 EYLÜL 2008, Cuma


Bu bir Linux makine üzerinde çalışan olduğunu varsayarsak, her zaman böyle idare ediyorum.:

exec(sprintf("%s > %s 2>&1 & echo $! >> %s", $cmd, $outputfile, $pidfile));

Bu $outputfile $cmd komut çıktısı yönlendirir komutu başlatır ve $pidfile süreç kimliği yazar.

Bu süreç ne yaptığını kolayca izlemek ve eğer hala çalışıyorsa sağlar.

function isRunning($pid){
    try{
        $result = shell_exec(sprintf("ps %d", $pid));
        if( count(preg_split("/\n/", $result)) > 2){
            return true;
        }
    }catch(Exception $e){}

    return false;
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:
Php

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Mark Hyder

    Mark Hyder

    6 EKİM 2011
  • Orson Wang

    Orson Wang

    28 EKİM 2006
  • TecNoob

    TecNoob

    15 AĞUSTOS 2013