自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Synchronized与ReentrantLock的区别

相似点:这两种同步方式有很多相似之处,它们都是加锁方式同步,而且都是阻塞式的同步,也就是说当如果一个线程获得了对象锁,进入了同步块,其他访问该同步块的线程都必须阻塞在同步块外面等待,而进行线程阻塞和唤醒的代价是比较高的(操作系统需要在用户态与内核态之间来回切换,代价很高,不过可以通过对锁优化进行改善)。 ReentrantLock与synchronized关键字一样,属于互斥锁,synchr

2018-01-31 18:20:14 220

原创 mysql中函数group_concat(多条数据的旧字段) as 新字段 ……GROUP BY

功能:查询出来的列可能是多条记录,这时候会报错[Err] 1242 - Subquery returns more than 1 row,所以需要把数据合并为一条记录,就用到该函数。 select m.*,(select p.res_name from sys_resource p where p.res_id = m.parent_id) as parentName, (sel

2018-01-29 16:35:22 671

原创 CyclicBarrier的使用

模拟十个运动员各自准备,等到所有人都准备好后,再一起跑package com.my.maven;import java.util.Random;import java.util.concurrent.BrokenBarrierException;import java.util.concurrent.CyclicBarrier;public class CyclicBarrierT

2018-01-26 14:07:55 110

原创 数据库分组查询

学生表student 字段id和name 课程表class 字段id和name 成绩表score 字段sid(学生id)、cid(课程id)、level成绩查出所有满足有三科以上学科并且分数大于80分的学生名字集合select s.sid,count(*) from score s where s.`level`>80 GROUP BY s.sid;

2018-01-15 18:33:08 293

原创 java实现斐波那契数列

public class FibonacciSequence { public static void main(String[] args) throws IOException { FibonacciSequence fibonacciSequence = new FibonacciSequence();// int i = 8; // int

2018-01-06 22:00:38 641

转载 java中等待一些线程执行完之后,再去执行别的方法(后者需要使用前者返回的结果)

Java主线程等待所有子线程执行完毕在执行,这个需求其实我们在工作中经常会用到,比如用户下单一个产品,后台会做一系列的处理,为了提高效率,每个处理都可以用一个线程来执行,所有处理完成了之后才会返回给用户下单成功。 我们通过以下的几种方法来解决: 一、用sleep方法,让主线程睡眠一段时间,当然这个睡眠时间是主观的时间,是我们自己定的,这个方法不推荐,但是在这里还是写一下,毕竟是解决方法 ja

2018-01-06 21:13:55 9091 2

原创 java单链表的倒序实现

public class NodeTest { public static void main(String[] args) { class Node { String name; int index; Node next; public Node(String name,

2018-01-06 21:07:06 1594

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除