源代码改成:
armyOfSuiDynasty.keepRunning=false;为什么会报无法获取?
而
armyTaskOfSuiDynasty.keepRunning = false;又能获取?
keepRunning 这个属性在定义的时候,必须添加volatile关键字,否则其他线程将不能获取这个值
keepRunning是在Runnable里面定义的,当然是用ArmyRunnable的实例armTaskOfSuiDynasty来调用啊。。。而armyOfSuiDynasty是Thread的实例,肯定不能直接调用keepRunning!
keepRunning 这个属性在定义的时候,必须添加volatile关键字,否则其他线程将不能获取这个值