浪人 浪人
3年前
一篇文章弄懂Java多线程基础和Java内存模型
文章目录一、多线程的生命周期及五种基本状态二、Java多线程的创建及启动1.继承Thread类,重写该类的run()方法2.通过实现Runnable接口创建线程类3.通过Callable和Future接口创建线程三、Java内存模型概念四、内存间的交互操作五、volatile和synchronized的
Wesley13 Wesley13
3年前
thinkphp缓存使用
thinkphp缓存使用一、总结1、这里的缓存不是指的缓存的页面,而是cache,如果你缓存了一个数组,那么你就可以取出这个数组里面的数据进行使用,用法性质和cookie和session有点像2、缓存的数据可以在thinkphp的runtime下的cache文件夹下面找到3、用法:可以用Cache类也可以用
Wesley13 Wesley13
3年前
Java深究之final、finally、finalize三者的区别
       在java中final、finally、finalize三者在写法上很相近,但是实际含义和作用却是相差甚远。本文主要是来深层的研究下这三者的用法以及之间的区别1.final属性:java中的关键字,修饰符作用:用于修饰类、成员方法、变量(成员变量、局部变量)用法:如果类被声明为final,那么该类就不能再派生出新的子类
Wesley13 Wesley13
3年前
Java多线程(二)
\恢复内容开始一,volatile关键字当多个线程操作共享数据时,可以保证内存中的数据可见性相较于synchronized关键字:1,不具备“互斥性”2,不能保证变量的原子性二,原子变量volatile保证内存可见性CAS(CompareAndSwap)算法保证数据的原子性内存值V预估值A更新值
Stella981 Stella981
3年前
Postman的一点使用技巧
PostmanMakesAPIDevelopmentSimple.DevelopersusePostmantobuildmodernsoftwarefortheAPIfirstworld.  本文介绍了一点点postman的常用功能,更多高级特性及用法请访问postman文档(https://www.osc
Stella981 Stella981
3年前
ASM读取class信息
Javaasm读取class信息\TOC\1class文件查看方式1.1使用jdk提供的javap命令_1.1.1javap_javap用法:javap<options<classes其中,可能的选项包括:
Wesley13 Wesley13
3年前
Java中的AQS到底是什么?高级面试必问!
前言JDK1.5以前只有synchronized同步锁,并且效率非常低,因此大神DougLea自己写了一套并发框架,这套框架的核心就在于AbstractQueuedSynchronizer类(即AQS),性能非常高,所以被引入JDK包中,即JUC。那么AQS是怎么实现的呢?本篇就是对AQS及其相关组件进行分析,了解其原理,并
Wesley13 Wesley13
3年前
Java锁事之Unsafe、CAS、AQS知识点总结
!(https://oscimg.oschina.net/oscnet/e14679ca0bdd2b95aa5869200e6bbaefff2.gif)关注“Java艺术”一起来充电吧!Unsafe、CAS、AQS是我们了解Java中除synchronized之外的锁必须要掌握的重要知识点。CAS是一个比较和替换的原子操作,AQS的实现
Stella981 Stella981
3年前
Scala
和java一样,scala也可在方法中使用可变参数,下面介绍两种可变参数的用法。/测试可变参数/@TestdeftestVariables():Unit{/注意这个号
Wesley13 Wesley13
3年前
UDT协议实现分析——UDT Socket的创建
UDTAPI的用法在分析连接的建立过程之前,先来看一下UDTAPI的用法。在UDT网络中,通常要有一个UDTServer监听在某台机器的某个UDP端口上,等待客户端的连接;有一个或多个客户端连接UDTServer;UDTServer接收到来自客户端的连接请求后,创建另外一个单独的UDTSocket用于与该客户端进行通