摘要: 一、AtomXXX类 解决多线程问题的更高效的方法,使用Atom类 Atom类本身方法都是原子性的,但不能够保证多个方法连续调用都是原子性的. atom类的底层实是cas 二、CAS(Compare And Set) cas(V(要改的值),Expected(期望当前值),NewValue(新的值) 阅读全文
posted @ 2020-07-09 23:34 陈星_Eli 阅读(137) 评论(0) 推荐(0)
摘要: 一、volitail起到什么作用 1.可变的,跟踪变量的变化,保证线程的可见性,并不能保证原子性. 1.1堆内存是所有线程共享的内存,每个线程都有自己专属的工作内存,当某一线程要访问某一个值的时候,都会copy一份到自己的空间,单线程要改变这个值的时候首先会对自己空间里的值进行改变, 什么时候写回堆 阅读全文
posted @ 2020-06-22 23:50 陈星_Eli 阅读(321) 评论(0) 推荐(0)
摘要: 一、TCP/IP、UDP 1、 TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。 UDP(User Data Protocol,用户数据报协议)是与TCP相 阅读全文
posted @ 2020-06-19 10:35 陈星_Eli 阅读(95) 评论(0) 推荐(0)
摘要: 一、synchronized对某个对象进行加索. object o =new object(); synchronized(o){};任何线程要执行代码块里的代码必须拿到o的锁. synchronized(this);锁定当前对象.等同于synchronized的方法public synchroni 阅读全文
posted @ 2020-06-18 10:56 陈星_Eli 阅读(141) 评论(0) 推荐(0)
摘要: 线程的三种创建方式: 一、继承Thread。 二、实现Runnable 三、线程池 Executors.newCachedThrad。 线程的启动方式: 一、new Thread1().run(); run方法是方法调用,直接执行run方法,按顺序执行之后的方法。 二、new Thread1().s 阅读全文
posted @ 2020-06-16 14:45 陈星_Eli 阅读(125) 评论(0) 推荐(0)