通过第二种方法实现多线程的优点在于:
可以避免单继承局限性,灵活方便,方便同一个对象被多个线程使用。
多个线程分配同一个资源会出现混乱的情况
多线程取票示例代码如下(三张图):
首先实现Runnable接口,定义票数,重写run方法,用while(true)下嵌套if(条件){ break结束循环}来实现循环输出和跳出循环
线程并发出现问题,会出现数据紊乱,取票出现错误,第五张票被重复取走
thread中的sleep方法可以使进程延时:
通过第二种方法实现多线程的优点在于:
可以避免单继承局限性,灵活方便,方便同一个对象被多个线程使用。
多个线程分配同一个资源会出现混乱的情况
多线程取票示例代码如下(三张图):
首先实现Runnable接口,定义票数,重写run方法,用while(true)下嵌套if(条件){ break结束循环}来实现循环输出和跳出循环
线程并发出现问题,会出现数据紊乱,取票出现错误,第五张票被重复取走
thread中的sleep方法可以使进程延时: