每天半小时,进步一点点。
ThreadLoacl(参考链接:https://mp.weixin.qq.com/s/fo9fe16fHIWwnhFMsFeVfA)
通常处理多线程并发安全,会使用乐观锁、悲观锁来控制,但是在解决并发冲突的时候会有一定的开销,影响性能。
ThreadLocal 特殊的地方在于不是等有冲突了再解决,而是通过限制只有当前自身线程可以访问,避免冲突发生。
创建一个ThreadLocal对象:
private ThreadLocal<Integer> localInt = new ThreadLocal<>();
上述代码创建一个localInt变量,由于ThreadLocal是一个泛型类,这里指定了localInt的类型为整数。
下面展示了如果设置和获取这个变量的值:
public int setAndGet(){
localInt.set(8);
return localInt.get();
}
算法:(原文链接:https://mp.weixin.qq.com/s/QIVHouOEmYMSJJ4PRbuwiQ)
一道数学题:
100个人回答五道题,有81人答对第一题,91人答对第二题,85人答对第三题,79人答对第四题,74人答对第五题。
答对三道题或三道题以上的人算及格,那么在这100人中至少有多少人及格呢?