这个是毕老师 多线程-售票的例子,我出现了一个让我无法理解的问题。照常把代码敲一下。
- class xianchen extends Thread
- {
- private static int pic = 20;
-
- public void run()
- {
- while(true){
- if(pic >0)
- System.out.println(currentThread().getName()+"..."+pic--);
-
- }
- }
- }
复制代码- class threadDemo
- {
- public static void main(String[] args)
- {
- xianchen xc1 = new xianchen();
- xianchen xc2 = new xianchen();
- xianchen xc3 = new xianchen();
- xianchen xc4 = new xianchen();
- xc1.start();
- xc2.start();
- xc3.start();
- xc4.start();
-
-
-
- }
- }
复制代码
结果{:3_46:}震惊了。我已经static全局pic了,结果出下如下情况,理论上每个线程打印出来的都是不一样的数字吧?
|
|