- 博客(9)
- 收藏
- 关注
原创 Java并发编程(五)--Condition
简介任意一个java.lang.Object都有一组监视器方法wait()、notify()、notifyAll(),通过这些方法和synchronized关键字配合使用可以实现等待/通知机制。通过这种机制可以轻而易举的实现消费者、生产者模式。具体实现搜索一下有很多 Condition是在java1.5中引入的,将这些对象与任意 Lock 实现组合使用,可以为每个对象提供多个等待集合。相比Obje
2017-10-20 15:31:38
611
原创 Java并发编程(四)--Semaphore
1.简介java.util.concurrent.Semaphore是一个计数信号量类,维持一个许可集合。每个acquire方法调用如果必要会阻塞直到获得一个可用许可。每个release调用增加一个许可。 在创建时可以传入int permits许可数、boolean fair是否公平,总体结构和可重入锁ReentrantLock类似,内部维持一个Semaphore.Sync类型同步器,有公平
2017-09-22 13:54:09
304
原创 springmvc限流拦截器
springmvc限流拦截器限流器算法目前常用限流器算法为两种:令牌桶算法和漏桶算法,主要区别在于:漏桶算法能够强行限制请求速率,平滑突发请求,而令牌桶算法在限定平均速率的情况下,允许一定量的突发请求 下面是从网上找到的两张算法图示,就很容易区分这两种算法的特性了漏桶算法令牌桶算法针对接口来说,一般会允许处理一定量突发请求,只要求限制平均速率,所以令牌桶算法更加常见。 令牌桶算法工具R
2017-09-20 10:58:59
6394
原创 java8 lambda表达式原理
java8 lambda表达式原理 java8已经推出有一段时间了,相信有不少公司已经把jdk升级到8了,每次jdk的升级都会带来一些性能以及应用上的优化,比如8移出了永久区,java.lang.OutOfMemoryError: PermGen space离我们而去,以及一些新的语法糖lambda,stream,默认方法等等,本文就来说说lambda表达式lambda表达式写法基本语法:
2017-09-20 10:58:13
10778
1
原创 feign form支持
feign是一个非常好用的http客户端工具,简单入门请见上篇文章,不多做介绍 但是在使用feign的时候也碰到了一点小坑,今天就来讲讲怎么解决这个坑feign bean提交看官方文档,feign post提交的时候可以使用bean传输,不需要每个参数注解@Param,然而feign会把这个bean的内容写入到http的 body中去。contentType为applicationJson sp
2017-09-20 10:49:14
5361
原创 feign入门教程
feign入门教程1.介绍feign简单来说是一个java http客户端,用来减少http API调用的复杂性。spring-Cloud-Netflix中就集成了feign客户端用来访问远程的http服务,不管是用来作为远程调用客户端,还是api接口测试都是非常方便的。 这里要讲的主要是OpenFeign。首先来看一下简单的操作例子 2.示例interface GitHub { @Requ
2017-09-20 10:47:38
3334
原创 Java并发编程(三)--ReentrantLock
1.简介ReentrantLock是一个可重入(指持有锁的线程可以进行多次加锁、释放锁)的独占锁实现,拥有和synchronized一样的行为和语义,并且对其做了一些扩展,如记录持有者信息、Condition(以后的文章再讲)支持等等。 ReentrantLock基于AbstractQueuedSynchronizer实现了公平模式和不公平模式的独占锁。在构造方法中根据传入fair参数,设置syn
2017-09-20 10:40:18
316
原创 Java并发编程(二)--java线程安全的一些基础
本文多摘自《java并发编程实战》和各种网上资料,因为java并发编程涉及内容太多,本文篇幅有限,只是对并发编程中的一些概念进行普及、和简略说明java并发编程编写正确的程序很难,编写正确的并发程序则是难上加难,和串行编程相比,并发编程线程安全性可能是非常复杂的,在没有充分的同步情况下,操作执行顺序是不可预测的,甚至产生一些奇怪的结果。所以我们需要了解一些java并发编程的基础概念、常见问题、jav
2017-09-18 15:17:45
472
原创 Java并发编程(一)--AbstractQueuedSynchronizer
简介java.util.concurrent.locks.AbstractQueuedSynchronizer 简称aqs,是J.U.C包中最核心的一个类。也是J.U.C包中其他同步器的基类,J.U.C包在JSR-166中引入,作者是Doug Lea,是著名的并行计算专家。
2017-09-17 11:51:17
510
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅