# Introduce

Single Thread Execution 设计模式指的是在同一时刻只能有一个线程去访问共享资源,简单来说,就是采用排他的操作保证同一时刻只能有一个线程访问共享资源。

通过 Single Thread Execution 可以将某个类设计成线程安全的类

# synchronized 实现

通过在共享资源上追加 shcnronized 的方式实现线程安全,如下:

 public synchronized int numAdd(){
	return ++num;
}

小贴士

子类如果继承了线程安全的类,然后打破了 Single Thread Execution(线程安全的方法去掉 synchronized) ,就会破坏方法的安全性。

synchronized 的排他性是以性能的牺牲为代价的,因此在保证线程安全的前提下应尽量缩小 synchronized 的作用域。

精彩内容推送,请关注公众号!
最近更新时间: 5/6/2020, 10:01:19 PM