上一页 1 ··· 7 8 9 10 11 12 13 14 15 16 下一页
摘要: 死锁:是指两个或两个以上的进程(或线程)在执行过程中,因争夺资源而造成的一种相互等待的现象,若无外力作用,他们将无法推进下去; 活锁:是指两个线程优先级相同,都礼让不走,就这样一直僵持下去; 饿死:在单线程情况下,A、B两个线程,A先执行;A在执行过程中,C线程来了,B让C先执行;C在执行过程中,D 阅读全文
posted @ 2018-11-15 00:49 胡金水 阅读(2522) 评论(0) 推荐(0) 编辑
摘要: 答:能,只不过只是一个指向数组的引用,而不是整个数组,如果改变了引用指向的数组,将会受到volatile的保护,但是如果多个线程同时改变数组的元素,volatile关键字就不能起到保护的作用。 阅读全文
posted @ 2018-11-15 00:34 胡金水 阅读(3026) 评论(0) 推荐(0) 编辑
摘要: sleep方法: 属于Thread类中的方法;会导致程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持着,当指定时间到了之后,又会自动恢复运行状态;在调用sleep方法的过程中,线程不会释放对象锁。(只会让出CPU,不会导致锁行为的改变) wait方法: 属于Object类中的方 阅读全文
posted @ 2018-11-15 00:30 胡金水 阅读(1347) 评论(0) 推荐(0) 编辑
摘要: run()方法: 是在主线程中执行方法,和调用普通方法一样;(按顺序执行,同步执行) start()方法: 是创建了新的线程,在新的线程中执行;(异步执行) 阅读全文
posted @ 2018-11-15 00:23 胡金水 阅读(1799) 评论(0) 推荐(0) 编辑
摘要: 面试官:线程池有哪些?分别的作用是什么? 常用的线程池有: 1、newSingleThreadExecutor: 单个线程的线程池,即线程池中每次只有一个线程工作,单线程串行执行任务; 2、newFixedThreadExecutor: 固定数量的线程池,每提交一个任务就是一个线程,直到线程达到线程 阅读全文
posted @ 2018-11-15 00:08 胡金水 阅读(7265) 评论(0) 推荐(0) 编辑
摘要: hashMap有4个构造函数: 阅读全文
posted @ 2018-11-13 01:06 胡金水 阅读(1029) 评论(0) 推荐(0) 编辑
摘要: HashTable:在并发的环境下,使用synchronized将整张表锁住; HashTable构造函数有: 阅读全文
posted @ 2018-11-13 01:04 胡金水 阅读(458) 评论(0) 推荐(0) 编辑
摘要: LinkedList构造函数有(两种): 阅读全文
posted @ 2018-11-13 01:01 胡金水 阅读(1178) 评论(0) 推荐(0) 编辑
摘要: ArrayList 构造函数有(三种): 阅读全文
posted @ 2018-11-13 00:56 胡金水 阅读(2691) 评论(0) 推荐(0) 编辑
摘要: 面试题: 1、ConcurrentHashMap有哪些构造函数? 一共有五个,作用及代码如下: //无参构造函数 public ConcurrentHashMap() { } //可传初始容器大小的构造函数 public ConcurrentHashMap(int initialCapacity) 阅读全文
posted @ 2018-11-13 00:50 胡金水 阅读(7366) 评论(2) 推荐(1) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 16 下一页