Wesley13 Wesley13
3年前
java8时间工具类Localdate、LocaldateTime
优点:1.方便。Date只能是日期加时间的格式,而LocalDate、LocalTime、LocalDateTime 分别代表日期,时间,日期时间,非常灵活。再就是后者在日期计算及格式化方面非常简单易用,而Date要繁琐很多。2.线程安全。传统时间类不支持多线程安全。缺点<目前发现的坑:1.在比较日期相隔
Stella981 Stella981
3年前
Android中AsyncTask的使用
原文https://blog.csdn.net/liuhe688/article/details/6532519在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细
Wesley13 Wesley13
3年前
Java实现几分钟之后调度任务的定时器
几分钟之后执行某一操作,使用定时器Timer可以实现,Timer是jdk中提供的一个定时器工具,使用的时候会在主线程之外起一个单独的线程执行指定的计划任务,可以指定执行一次或者反复执行多次。具体实现如下:1packagecom.aone.foottalk.common;23importjava
Wesley13 Wesley13
3年前
Java8 容器类详解
 ArrayListVectorCopyOnWriteArrayListLinkedListHashMapConcurrentHashMapLinkedHashMapLinkedBlockingQueuePriorityQueue使用场景随机访问ArrayList的线程安全版读多写少,写加锁,写操作在复制的
Wesley13 Wesley13
3年前
Java并发编程:AQS的公平性
所谓公平是指所有线程对临界资源申请访问权限的成功率都一样,它不会让某些线程拥有优先权。通过几篇文章的分析我们知道了JDK的AQS的锁是基于CLH锁进行优化的,而其中使用了FIFO队列,也就是说等待队列是一个先进先出的队列。那是否就可以说每条线程获取锁时就是公平的呢?关于公平性,严格来说应该分成三个点来看:入队阶段、唤醒阶段以及闯入策略。友情链接:
Wesley13 Wesley13
3年前
Java 集合系列
HashSet介绍HashSet是一个没有重复元素的集合。它是由HashMap实现的,不保证元素的顺序,而且HashSet允许使用null元素。HashSet是非同步的。如果多个线程同时访问一个哈希set,而其中至少一个线程修改了该set,那么它必须保持外部同步。HashSet数据结构java.lang
Stella981 Stella981
3年前
Executors.newSingleThreadExecutor结合javafx的Task更新进度条(三)
通过在service的相关函数中打印线程ID,代码如下:classProgressBarServiceextendsService<Integer{@Overrideprotectedvoidready(){super.ready();System._out_.println("ProgressBarS
Wesley13 Wesley13
3年前
Java 并发编程:AQS 的公平性
所谓公平是指所有线程对临界资源申请访问权限的成功率都一样,它不会让某些线程拥有优先权。通过几篇文章的分析我们知道了JDK的AQS的锁是基于CLH锁进行优化的,而其中使用了FIFO队列,也就是说等待队列是一个先进先出的队列。那是否就可以说每条线程获取锁时就是公平的呢?关于公平性,严格来说应该分成三个点来看:入队阶段、唤醒阶段以及闯入策略。友情链接:
Wesley13 Wesley13
3年前
Java 进阶(一) JVM运行时内存模型
1.JVM运行时数据区域的划分a.程序计数器(ProgramCounterRegister)一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。每个线程拥有独立的一个计数器,如果当前执行的是Native方法,则计数器值为空。b.JVM栈(JavaVirtualMachineS
Stella981 Stella981
3年前
Http请求封装(对HttpClient类的进一步封装,使之调用更方便。另外,此类管理唯一的HttpClient对象,支持线程池调用,效率更高)
1packagecom.ad.ssp.engine.common;23importjava.io.IOException;4importjava.util.ArrayList;5importjava.util.List;6importjava.util.M