06 2017 档案
摘要:多线程编程建议 1,将应用设计成支持多线程并发,可提高性能 2,编写多线程程序,首先保证它是正确的,其次再考虑性能 3,同步处理的开销大于非同步处理,如果可能,尽量使用非同步处理 4,避免多个共享变量共用一把锁,每个共享变量,都应该由一个唯一确定的锁保护 5,采用分拆临界资源等方式减少多线程阻塞或者
阅读全文
摘要:不用加 g选项 就默认把符合条件的都加入 a\ 后面的内容 加入一行默认是自动换行; 加 \n可以在满足条件的行下方加入多行
阅读全文
摘要:synchronized 基本规则 1. 当一个线程访问“某对象”的“synchronized方法”或者“synchronized代码块”时,其他线程对“该对象”的该“synchronized方法”或者“synchronized代码块”的访问将被阻塞。 2. 当一个线程访问“某对象”的“synchr
阅读全文
摘要:启动线程两种方式: 1. 实现Runnable接口; 2. 继承Thread类。 选用:能使用接口,就不用从Thread类继承。 使用继承的方法不够灵活,从这个类继承了就不能从其他类继承; 实现接口后,还可以从其他类继承,也可以再实现其他接口。 线程状态转换: 常用方法: 关闭线程 举例: 多线程同
阅读全文
摘要:1. 基本概念 多态是指一个事物有不同的表现形式或形态。 多态存在的三个必要条件:要有继承、要有重写、父类变量引用子类对象。 当使用多态方式调用方法时: 首先检查父类中是否有该方法,如果没有,则编译错误;如果有,则检查子类是否覆盖了该方法。 如果子类覆盖了该方法,就调用子类的方法,否则调用父类方法。
阅读全文
摘要:Netty百万级推送服务设计要点:http://www.infoq.com/cn/articles/netty-million-level-push-service-design-points/ 用Netty开发中间件:高并发性能优化 http://www.cnblogs.com/549294286
阅读全文
摘要:1.数组动态扩容 现象:系统一直在做cms gc,但是老生代一直不降下去,但是执行一次jmap -histo:live之后,也就是主动触发一次full gc之后,通过jstat -gcutil来看老生代一下就降下去了. 原因:跨代引用。 ArrayList里的数组扩容,使用的是System.arra
阅读全文
摘要:1. ByteBuf 2. 问题描述 日志记录中报堆外内存溢出。 3. 问题定位及修改 Netty提供了ByteBuf泄露的检测机制。 JVM启动参数中添加: -Dio.netty.leakDetectionLevel=advanced , log4j2.xml配置io.netty日志记录即可。 检
阅读全文
摘要:一般用netty来发送和接收数据都会继承SimpleChannelInboundHandler和ChannelInboundHandlerAdapter这两个抽象类,那么这两个到底有什么区别呢? 在客户端的业务Handler继承的是SimpleChannelInboundHandler,而在服务器端
阅读全文
摘要:Configure high and low write watermarks Server ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.childOption(ChannelOption.WRITE_BUFFER_HIG
阅读全文

浙公网安备 33010602011771号