目标:
1:知道同步与异步的概念
2:解决多线程同时修改同一个全局变量产生的资源竞争问题方式(线程锁)
一:同步与异步
同步:多任务执行时要求有先后顺序,必须一个先执行完毕,另一个线程才能继续执行,只有一个主线!(一个子线程执行,另一个子线程等待这个子线程执行结束,等待期间什么也不做)
异步:多任务执行时没有先后顺序,可以同时执行,存在多条运行主线!
二:解决多线程同时修改同一个全局变量产生的资源竞争问题(线程锁)
答:可以通过线程同步(同一时间只能有一个线程对全局变量进行修改)的方式(线程锁)来修改多线程间资源竞争问题!思路如下
线程锁机制(同步):两个子线程同时对一个全局变量进行修改,会产生资源竞争问题,采用线程锁机制可以解决此问题,线程锁是在一个子线程修改全局变量时,子线程会对这个全局变量上一把锁,这样其他子线程无法对这个全局变量进行修改,修改完全局变量后,在把锁打开,让其他线程进行修改(线程锁同理)!这就是线程锁机制
图解: