今天,写了一个写了一个买票的案例,测试多线程访问的问题,结果打印总是某一个线程,其他线程都不能进来,下面贴下代码



                  一。错误代码

                        Thread买票这个案例问题分析

                           打印结果如下

                                         Thread买票这个案例问题分析   


                       可以看到都是同一个进程打印的值,为何会这样能?,想了很久,解释下,其实问题是清楚的,但是解决问题思路出现了问题,现在解释下问题


                       二,问题分析

                               Thread买票这个案例问题分析



                     三,解决思路

                           只要让进程不要一直占据循环就行了,换句话说,就是,将锁加在循环内,这样每个进程都有机会进入到循环中,于是代码如下


                     

                   四,正确代码

                                 Thread买票这个案例问题分析

                        注意,改变了锁加的位置,这样,每个进程都能进入到循环中,这样就能,每个进程都能执行买票的代码了。

相关文章:

  • 2022-02-13
  • 2021-11-27
  • 2022-03-03
  • 2021-12-27
  • 2021-11-30
  • 2021-05-18
  • 2021-09-08
  • 2021-09-02
猜你喜欢
  • 2021-04-16
  • 2021-12-27
  • 2022-12-23
  • 2021-06-25
  • 2022-12-23
  • 2021-06-19
  • 2022-02-01
相关资源
相似解决方案