【JAVA-线程】CAS

CAS 比较并交换

import java.util.concurrent.atomic.AtomicInteger;

/*
 * CAS比较并交换
 */
public class CAS {
	private static AtomicInteger stock =new AtomicInteger(5);
	
	public static void main(String[] args) {
		for(int i=1;i<6;i++) {
			new Thread(()->{
			try {
				Thread.sleep(1000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			Integer left =stock.decrementAndGet();
			if(left<1) {
				System.out.println("抢完了....");
				return;
			}
			System.out.println(
					Thread.currentThread().getName()+"抢了一件商品"
					+"\n 还剩下"+left);
			}).start();
			
		}
	}
}

【JAVA-线程】CAS

相关文章:

  • 2021-11-19
  • 2021-08-14
  • 2021-12-13
  • 2021-09-15
  • 2021-06-10
  • 2021-09-22
  • 2021-09-02
猜你喜欢
  • 2021-08-19
  • 2021-04-23
  • 2022-12-23
  • 2021-09-24
  • 2022-02-10
  • 2022-12-23
  • 2021-07-18
相关资源
相似解决方案