R&D/VRouter

VNS 업데이트

sunshout 2009. 12. 17. 21:34
1) 프로세스 kill 시 pid.kill() 대신에
    os.kill(p.pid, signal.SIGKILL) 로 변경. 이는  kill -9  효과를 발휘함

2) Popen(cmd, shell=False) 의 의미
   cmd 를 list 형태로 적으면 shell=False를 쓰고
   cmd 를 하나의 string으로 적으면 shell=True를 써야 한다.

  cf) shell=True로 불러진 명령이 새로운 프로세스를 띄우는 거면 실제로는 2개의 프로세스가 뜨게 된다. 하나는 쉘이고 하나는 뜨우고자 한 프로그램이다.
따라서 스크립트가 아닌 프로세스를 띄우는거면 cmd를 리스트 형태로 만들고 shell=False로 하여서 실행하여야 한다. 나중에 죽을때 2개를 죽여야 하는가? 하나를 죽여야 하는가를 고생하게 되지 않기 위해서 ㅋㅋ

참고:
http://bbs.python.or.kr/viewtopic.php?p=63000&sid=120dab64d6daba21c16ec134e672cad8