上一页 1 ··· 6 7 8 9 10 11 12 下一页
摘要: 总览 Dubbo在调用服务的时候使用了DefaultFuture这个类,其中有一个概念是异步调用转成同步调用。核心思想就是管程。而实现方式就是使用lock和condition。 condition 是java 并发包中的一个类, 在java内置管程中是一个条件变量的,而condition是可以实现一 阅读全文
posted @ 2019-05-15 21:26 沧海红心_田帅 阅读(42) 评论(0) 推荐(0)
摘要: 前言 临界区、管程、信号量是操作系统对并发编程支持的三个概念。它们并不是属于java,而是属于操作系统(目前我知道 linux有这三个概念,我觉得windows也应该有只是不确定,否则怎么会支持多核CPU呢?)。 临界区 临界区是线程需要互斥执行的一段代码。临界区的资源是线程共享的,但是执行的返回结 阅读全文
posted @ 2019-05-13 19:22 沧海红心_田帅 阅读(50) 评论(0) 推荐(0)
摘要: 第一步 docker pull rabbitmq:management 注意:如果docker pull rabbitmq 后面不带management,启动rabbitmq后是无法打开管理界面的,所以我们要下载带management插件的rabbitmq. 第二步 docker images 第三 阅读全文
posted @ 2019-05-07 16:25 沧海红心_田帅 阅读(14) 评论(0) 推荐(0)
摘要: 前言 排序是我们在写项目中经常用的sql语句的关键字。 往往order by 用不好的话也会对sql性能有一定的影响。我们现在就来介绍一下他的执行过程,并介绍一下优化。 正言 首先我们来举个例子,假设你要查询城市是”杭州“的所有人的名字,并且按照姓名排序返回前1000个人的姓名、年龄。 表定义: 这 阅读全文
posted @ 2019-05-06 21:23 沧海红心_田帅 阅读(176) 评论(0) 推荐(0)
摘要: docker 中下载 mysql docker pull mysql 启动 docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql 进入容器 docker exec -it mysql bash 登录my 阅读全文
posted @ 2019-04-29 11:22 沧海红心_田帅 阅读(24) 评论(0) 推荐(0)
摘要: 介绍 等待-通知机制java在多线程开发当中对锁等待的一种完善。 当一个线程无法满足当前工作的条件的时候,可以让其进入对象等待池,并释放掉当前锁对象。当其他线程调用notifyAll() 或者notify()的时候就会唤醒线程,将线程放入** 锁等待池**。 可以进行争夺锁对象。 使用方法 可以调用 阅读全文
posted @ 2019-04-27 09:51 沧海红心_田帅 阅读(39) 评论(0) 推荐(0)
摘要: 死锁造成的原因 有线程T1 和线程T2 ,T1占用资源A也就是锁住了A对象synchronized(A),T2占用资源B也就是锁住了资源B对象syncrhonized。此时T1线程在去申请获取B对象的时候,T2线程还没有释放资源。T1线程就会一直等待资源B,并且也不会释放资源A.而T2也去申请资源A 阅读全文
posted @ 2019-04-23 16:29 沧海红心_田帅 阅读(21) 评论(0) 推荐(0)
摘要: 开头: 互斥锁是为了保证同一个方法同时间只有一个线程去执行,这个也是在多线程开发当中最基本的实现。在java体系当中有很多方法可以实现目的,如: synchronized ,lock ,redis分布式锁,zk分布式锁,基于数据库实现悲观锁等等。 本文将介绍synchronized这个java原生支 阅读全文
posted @ 2019-04-21 13:01 沧海红心_田帅 阅读(22) 评论(0) 推荐(0)
摘要: 随着jdk不断开发, 一些基本集合的实现方法也有所不同。 本文主要分析jdk7和jdk8。 JDK8中的HashMap HashMap底层维护了一个数组, 数组中的很一项是一个Entry。 1.创建 一个HashMap HashMap<String, Integer> map = new HashM 阅读全文
posted @ 2019-04-20 11:53 沧海红心_田帅 阅读(17) 评论(0) 推荐(0)
摘要: 一: 单一职责原则 单一职责原则按照表面的意思来说就是一个接口一个类一个方法只负责一个事情。 以电话接口为例: public interface IPhone { //拨通电话 public void dial(String phoneNumber); //通话 public void chat(O 阅读全文
posted @ 2019-03-28 09:55 沧海红心_田帅 阅读(28) 评论(0) 推荐(0)
上一页 1 ··· 6 7 8 9 10 11 12 下一页