1
程序是否可以動態創建啓動的名稱進程? 考慮著名的fork炸彈代碼:動態命名進程
:(){ :|:& };:
或
import os
while os.fork() or True: os.fork()
有沒有可能讓它每次它執行時產生一個新的隨機過程的名字嗎?這會讓它擺脫困難很多。 它不一定是在Perl或Python中,我很想看到其他語言的例子。
程序是否可以動態創建啓動的名稱進程? 考慮著名的fork炸彈代碼:動態命名進程
:(){ :|:& };:
或
import os
while os.fork() or True: os.fork()
有沒有可能讓它每次它執行時產生一個新的隨機過程的名字嗎?這會讓它擺脫困難很多。 它不一定是在Perl或Python中,我很想看到其他語言的例子。
通常可以設置進程名稱,但是此功能因操作系統而異。在Perl中,我們可以分配給$0
變量,從而改變當前進程名:
for my $i (1 .. 5) {
fork && next;
$0 = "foobar: $i";
sleep 5;
exit;
}
print for grep /foobar/, `ps aux`;
它產生的輸出:
1000 1231 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 1
1000 1232 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 2
1000 1233 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 3
1000 1235 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 4
1000 1236 0.0 0.0 7836 552 pts/5 S+ 13:32 0:00 foobar: 5
或類似的東西。我不知道這將如何完成,但shell和Python應該具有類似的功能。
這很棒,它適用於我認爲重要的所有操作系統。 – spydon