多线程之间实现
来源:互联网 发布:淘宝定金尾款是同价格 编辑:程序博客网 时间:2024/06/11 02:50
面试题
1.什么是多线程安全?
当多个线程同时共享数据时候,同一个全局变量或者静态变量,在做写操作的时候,会出现数据冲突问题,也就是线程安全问题。做读的时候是不会发生数据冲突的。
2.如何解决多线程之间的线程安全问题?
使用sync同步或者使用lock锁
3.为什么使用线程sync同步或者使用锁可以解决线程安全问题?
发生冲突数据问题(线程不安全) 只能让当前一个线程执行,执行完成后释放锁,然后才能让其他的线程执行,这样可以解决线程不安全问题
4.什么是线程之间的同步?
当多个线程共享一个资源时候,不会受到其他的线程干扰
5.什么是同步代码块?
例子
synchronized(同一个数据){
可能会发生线程冲突问题
}
说白了就是说将 可能发生安全问题的代码 用sync给包括起来
同步的分类 : 同步函数 和静态同步函数 public staticsync
6.同步代码块和同步函数区别
同步代码块使用的 自定义锁(明锁)
同步函数使用的是 this锁
7.同步函数与静态同步函数区别?
注意:有些面试会这样问:例如现在一个静态方法和一个非静态静态怎么实现同步?
答:
同步函数使用this锁
静态同步函数使用字节码文件,也就是类.class
8.什么是线程死锁
同步中嵌套同步,导致锁无法释放
解决方法:尽量不要同步中嵌套同步阅读全文
0 0
- 多线程之间实现同步
- 多线程之间实现通讯
- 多线程之间实现
- 多线程之间实现同步视频教程
- Condidtion实现多线程之间的线程通信
- 使用Condition实现多线程之间调用
- (二)多线程之间实现同步
- (三)多线程之间实现通讯
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- VC中利用多线程技术实现线程之间的通信
- Linux学习笔记(三)_网络
- linux0.11内核完全剖析- fork.c
- JAVA关键字this和super作用与案例
- vue项目,引入elementUI没有样式,报错如下图,是好像是少了什么支持文件
- OnSharedPreferenceChangeListener调用失败之坑 强引用 软引用 弱引用 虚引用之分
- 多线程之间实现
- Android studio默认安装路径?
- leetcode 401. Binary Watch 一个十分经典的DFS深度优先遍历的做法
- QT控件大全五QProgressIndicator
- overflow 清除浮动
- docker RunC Create 源码简单分析
- 成员函数作为回调函数
- javascript 正则表达式大全
- spring aop 切面记录log4j日志 之around记录异常信息