博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaSE
阅读量:5337 次
发布时间:2019-06-15

本文共 627 字,大约阅读时间需要 2 分钟。

 运行机制

 

异常

线程

 Java程序运行的时候底层也是多线程,除了main,gc也在同时运行。

  线程状态:

线程同步(多个线程要访问同一份资源)

1.     同步块  Synchronized(引用类型){}

2.     同步方法  Public synchronized test(){}

线程安全:hashtable stringbuffer (synchronized)效率相对低下

多线程

1.   继承thread类(重写run方法-使用线程)

缺点:Java是单继承,如果已经继承了一个类,无法继承其他类。

2.     实现runnable接口(重写run方法,静态代理?)

2-1设计类,实现runnable接口,重写run方法

2-2启动多线程(创建真实角色-创建代理角色,持有真实对象的引用-执行任务)

优点:避免单继承,方便共享资源(可创建多个代理对象)

守护线程

 后台运行的线程,随着主线程运行而同时运行,而主线程如果消失,则所有守护线程也消失。

 应用:GC(最大的守护线程)、状态监听服务。

 Volatile??????///

 跟同步没有任何关系,只是用来提高内存中变量访问效率

 死锁(过多的同步 占用资源不放,彼此需要对方的资源)

 解决方法之生产者消费者模式(生产者和消费者都分别是1个线程,当生产者生产完1个数据后,消费者要立即取走数据。)

 

 

转载于:https://www.cnblogs.com/NeverGiveUp0/p/11109000.html

你可能感兴趣的文章
Linux自己安装redis扩展
查看>>
HDU 1016 Prime Ring Problem(dfs)
查看>>
C#中结构体与字节流互相转换
查看>>
session和xsrf
查看>>
跟随大神实现简单的Vue框架
查看>>
Linux目录结构
查看>>
LeetCode-Strobogrammatic Number
查看>>
luoguP3414 SAC#1 - 组合数
查看>>
五一 DAY 4
查看>>
(转)接口测试用例设计(详细干货)
查看>>
【译】SSH隧道:本地和远程端口转发
查看>>
win8.1安装Python提示缺失api-ms-win-crt-runtime-l1-1-0.dll问题
查看>>
图片点击轮播(三)-----2017-04-05
查看>>
判断两个字符串是否相等【JAVA】
查看>>
直播技术细节3
查看>>
《分布式服务架构:原理、设计于实战》总结
查看>>
java中new一个对象和对象=null有什么区别
查看>>
字母和数字键的键码值(keyCode)
查看>>
协议和代理
查看>>
IE8调用window.open导出EXCEL文件题目
查看>>