>php教程 >php手册 >小技巧找出一个php的cron脚本出问题的代码行

小技巧找出一个php的cron脚本出问题的代码行

WBOY
WBOY원래의
2016-06-06 19:48:081252검색

这个小技巧虽然很小,但是很有用。 我写了一个cron脚本,但是隔一天发现,这个昨天的cron脚本还一直在跑着,没有停下来,一定是里面有个程序堵住了。 但是如果我重新跑又需要很多时间。这个怎么办? 现在最需要就是要知道程序停在了那行代码上了。使用gdb:

这个小技巧虽然很小,但是很有用。

 

我写了一个cron脚本,但是隔一天发现,这个昨天的cron脚本还一直在跑着,没有停下来,一定是里面有个程序堵住了。

但是如果我重新跑又需要很多时间。这个怎么办?

 

现在最需要就是要知道程序停在了那行代码上了。使用gdb:

 

$sudo gdb -p <span>14973</span><span> 
(gdb) print (</span><span>char</span> *)executor_globals.active_op_array-><span>filename 
$</span><span>1</span> = <span>0x9853a34</span> <span>"</span><span>/home/xinhailong/test/php/test.php</span><span>"</span><span> 
(gdb) print (</span><span>char</span> *)executor_globals.active_op_array-><span>function_name 
$</span><span>2</span> = <span>0x9854db8</span> <span>"</span><span>test1</span><span>"</span><span> 
(gdb) print executor_globals</span>->current_execute_data->opline-><span>lineno 
$</span><span>3</span> = <span>4</span>

 

好了,我们就知道了,这个程序停在了/home/xinhailong/test/php/test.php文件的第4行代码中的test1函数内。

于是就能进行后续的分析了。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.