一共有5个线程,由线程池控制,这5个线程中的方法都是对数据库中的表进行操作的(更新,删除等),要求:如果发现哪几个线程是同时对一个表进行操作,那么就执行当前线程,挂起其他共同操作一张表的线程,当前线程执行完后,执行刚挂起的线程。
例如:有5个线程(A,B,C,D,E)同时开始反复执行,其中3个线程(B,D,E)对同一张表进行操作,当同时开启这5个线程时,怎样只让A,C和B,D,E其中的一个执行?
就是第一遍执行是线程:A B C
就是第二遍执行是线程:A C D
就是第三遍执行是线程:A C E
就是第四遍执行是线程:A B C
就这样反复下去...