[問題] sleep與-e搭配應用

看板 Perl
作者 jacky1989 ()
時間 2025-06-11 01:26:39
留言 0則留言 (0推 0噓 0→)

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

您可能感興趣