為什么停止軍隊線程的操作是被舞臺線程執行的?
老師您好,我在AmmyRunnable中添加了一個線程停止的方法
public?void?stop()?{ ????if?(keepRunning?==?true)?{ ????????keepRunning?=?false; ????} ????System.out.println(Thread.currentThread().getName()?+?"發出停止進攻的命令!"); }
我發現程序輸出的時候,發出停止進攻的命令是由舞臺發出的,可是執行這個停止的方法不是分別由各自的軍隊線程去執行的嗎?
我是不是可以這樣理解,在多線程中,除了線程自己的run方法是由該線程自己執行的,該線程中的其它方法都是由主線程執行的?
2015-04-08
第二個問題其實沒什么意義,各個線程的分工合作全靠你來設計,沒什么必然的規定。
2015-04-08
舞臺的作用是告訴軍隊你得時間到了,該停了。至于真正停下來還是靠run里的控制