java高并发实战(二)——线程(并行程序)基础

由于之前看的容易忘记,因此特记录下来,以便学习总结与更好理解,该系列博文也是第一次记录,所有有好多不完善之处请见谅与留言指出,如果有幸大家看到该博文,希望报以参考目的看浏览,如有错误之处,谢谢大家指出与留言。

一、什么是线程?

线程是进程的执行单元(具体这里就不赘述了,详细原理百度即可查到)

二、线程的基本操作


三、创建线程的方式(这里只介绍到JDK1.8以前,后续再把JdK1.8加进来)

start与run用法:如果只run不start,那么不会开辟新的线程,会在原来run方法中执行,执行start()才会去创建开辟一个新线程。


四、终止线程

stop不推荐,因为他是暴力性的,因此,无法保证数据的一致性,无法追踪线程执行到哪一步。


五、中断线程


举例:


六、挂起与继续执行


七、等待与谦让

wait,notifyAll建议使用在系统级上因为他们作用在object对象上,就是所有,不建议用在某一线程上


八、线程守护

1.在后台默默的完成一些系统性服务,比如垃圾回收。JIT线程就可以理解为守护线程

2.当java应用内,只有守护线程时,Java虚拟机就会自然退出

Thread t=new Daemon T();

t.setDaemon(true);

t.start();

九、线程优先级

优先级,high高优先级并不是一定执行,只是抢占执行的概率比较高


这里就简单介绍线程的基础用法。后续会深入了解线程。

猜你喜欢

转载自blog.csdn.net/gududedabai/article/details/80815666