- 博客(4)
- 收藏
- 关注
原创 多线程之栅栏CyclicBarrier
栅栏和闭锁功能类似,都是控制线程是否马上继续执行下去。区别就是:闭锁是让所有线程等待一组事件发生之后才能继续执行下去,而栅栏就是等待一组线程到达之后才继续执行下去。就拿建筑工地举例:闭锁相当于大门,所有工人等待大门打开这个事件发生之后才能继续通过;而栅栏就是相当于一个接送车,每一个工人就是一个线程,等到车上上满之后,也就是指定的人到齐之后,车才能发动。而栅栏相对闭锁的区别还有一点就是栅栏可...
2018-08-28 15:10:40 492
原创 多线程之闭锁CountDownLatch
闭锁可以理解为要达到一组需要完成的步骤之后才能让所有线程继续往下走;就像一个学校大门,所有的学生都想放学回家都堵在门口,这时候必须等到保安做完他的事才能放行(比如说上厕所),完事之后,一开大门,所有的学生(线程)才能通过大门,继续走。这里写了一个很好理解的一个demo:package cn.wzy.regextest;import java.util.concurrent.Coun...
2018-08-13 14:26:02 190
原创 使用websocket实现群聊(多个群)
最近一个项目中需要用到一个用户实时聊天需求:需要很多用户(在不同的房间)进行实时聊天,也就是一个简单的聊天室,这里用的是websocket实现。这里需要对每一个连接都指定两个参数:用户的userId和所加入的房间id(roomId);@ServerEndpoint("/community/{ro_user}")使用{ro_user}来绑定请求参数,不同的用户连接的时候就把参数加入到连接的后...
2018-08-09 20:08:39 15223 15
原创 通过自定义注解和java反射实现Spring-DI依赖注入
依赖注入的原理就是简单说就是从头往下递归生成依赖对象的,然后对引用字段赋值最后返回。这里实现通过变量类型来生成相应的对象。模拟一个用户的注册业务,首先是controller层调用service层,然后调用dao层代码实现保存用户。文件结构:UserControllerpackage cn.wzy.controller;import cn.wzy.DI.Inject;...
2018-08-03 15:08:06 2837 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人