是否有可能在bash腳本中使用線程。我在java中有一個驅動類,我試圖同時運行多個實例。我知道這樣做的唯一方法是在bash中創建線程,但我不確定這是否可行。任何幫助,將不勝感激bash中的線程?
22
A
回答
27
擊不支持線程本身,而是你可以在後臺啓動多個Java進程,如:
java myprog &
java myprog &
java myprog &
任何比你可能會考慮Python或Ruby以上,其中有線程管理工具,您可以等待每一個完成並收集輸出/退出狀態等
編輯:中借鑑@CédricJulien建議使用wait
,這裏有一個更深入的例子。鑑於這種MyProg.java
程序:
public class MyProg {
public static void main(String[] args) {
System.exit(Integer.parseInt(args[0]));
}
}
你可以編寫以下bash-threads.sh
腳本啓動它的多個實例並行:
#!/bin/bash
set -o errexit
java MyProg 1 &
pid1=$!
java MyProg 0 &
pid2=$!
java MyProg 2 &
pid3=$!
wait $pid1 && echo "pid1 exited normally" || echo "pid1 exited abnormally with status $?"
wait $pid2 && echo "pid2 exited normally" || echo "pid2 exited abnormally with status $?"
wait $pid3 && echo "pid3 exited normally" || echo "pid3 exited abnormally with status $?"
它的輸出是:
pid1 exited abnormally with status 1
pid2 exited normally
pid3 exited abnormally with status 2
26
相關問題
- 1. Bash中的多線程
- 2. bash的while循環線程
- 3. BASH腳本中的多線程ping
- 4. 在Bash腳本中的多線程
- 5. bash中:從線
- 6. Bash中的連接線
- 7. 多線程編程與bash腳本
- 8. 用多線程加速bash腳本?
- 9. Perl或Bash線程池腳本?
- 10. 多線程Bash如果語句
- 11. Bash多線程速度問題
- 12. 嘗試求解器Shell Bash中的線性代數方程組
- 13. Unix環境中的多線程/並行Bash腳本
- 14. 線程池中的線程
- 15. 線程中的線程
- 16. bash中的開關線位置
- 17. bash腳本中的直線查詢
- 18. 的Python:打印到單獨的bash線每個線程,在多線程應用程序
- 19. 從給定的線在bash
- 20. 的Bash shell兩條線
- 21. 無法讀取的bash線
- 22. 如何限制在bash中使用的線程/子進程的數量
- 23. 如何在我的bash腳本中使用並行編程/多線程?
- 24. Java中線程中的線程?
- 25. 如何在bash單線程中聚合計數
- 26. 如何將線程添加到bash腳本中?
- 27. 如何在bash shell腳本中啓動兩個線程?
- 28. 線程中的流程控制。線程
- 29. Python中的線程 - 線程或進程?
- 30. 在Bash Shell中是否存在像Bash中的進程替換?
你可以在後臺運行的一些東西用'&' – Ibu 2011-05-27 18:57:14