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

  • Alan Fullmer

    Alan Fullmer

    3 EYLÜL 2010
  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • LounaTutorials

    LounaTutoria

    10 EYLÜL 2009