作者projectcat (神手貓)
看板Perl
標題[問題] 頗急的 PERL 不中斷的程式
時間Mon Feb 14 16:12:50 2011
如題~
例如
=======write.pl=======
{
...
system "echo a1 >> junk.log";
system "echo a2 >> junk.log";
...
}
======================
不論有多少人"同時"執行 write.pl
最後看到的排序一定是
=======junk.log=======
a1
a2
a1
a2
.
.
======================
不會連續出現a1的情形
目前我是以touch一個file最為lock的作用
想請教是否有更好得方式
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.120.6.67
推 abliou:看不太懂這在幹嘛 02/15 01:20
※ 編輯: projectcat 來自: 114.33.50.153 (02/15 09:23)
→ CindyLinz:你查一個叫作 flock 的函數. 原理跟你 touch file 02/15 16:41
→ CindyLinz:(應該說你運用起來)差不多, 不過可以避開空窗期的問題.. 02/15 16:42
→ CindyLinz:但如果檔案在 NFS 上無效.. 02/15 16:42