[問題] sleep與-e搭配應用
as title
我寫一段簡單程式去判斷檔案是否存在
如果存在就做下一步這樣
wait.pl
#!/usr/bin/perl
while(1){
if(-e $ARGV[0]){
printf("File exist.\n");
exit;
}
sleep(60);
}
我自己使用沒問題,但同仁用了以後我就被公司的IT部門碎念了
他說我的程式卡住執行緒,要我修改
但我自己左看右看,應該都沒問題
以top檢查,也是沒有卡住
但以ps檢查就出現一堆死掉的執行緒
我這樣檢查 ps -aef|grep wait.pl
由於我們是許多台server串起來使用
所以檔案不一定在本機硬碟
有可能檔案還symbollic link到其他硬碟去
所以實際執行可能會這樣打
/server3/disk1/userA/bin/wait.pl /server1/disk0/dir1/list.log
list.log這個檔案可能是存在server2的disk2這樣
所以會變成
list.log -> /server2/disk2/list.log
因此我想問,我這樣想法會造成卡住執行緒的問題嗎?
先感謝大家,如果看不懂,我再補充
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.124.65.196 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Perl/M.1749576401.A.121.html
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章
5
14