摘要: 互斥量(mutex)从本质上说是一把锁,在访问共享资源前对互斥量进行加锁,在访问完成后释放互斥量上的锁。对互斥量进行加锁以后,任何其他试图再次对互斥锁加锁的线程将会阻塞直到当前线程释放该互斥锁。如果释放互斥锁时有多个线程阻塞,所有在该互斥锁上的阻塞线程都会变成可运行状态,第一个变为运行状态的线程可以 阅读全文
posted @ 2018-03-05 22:01 stanljj 阅读(723) 评论(0) 推荐(0) 编辑
摘要: 第一个继承Thread类来实现多线程,其实是相当于拿出三件事即三个卖早餐10份的任务分别分给三个窗口,他们各做各的事各卖各的早餐各完成各的任务,因为MyThread继承Thread类,所以在newMyThread的时候在创建三个对象的同时创建了三个线程;实现Runnable的, 相当于是拿出一个卖早 阅读全文
posted @ 2018-03-05 21:27 stanljj 阅读(1336) 评论(0) 推荐(0) 编辑
摘要: 1.三者在执行速度方面的比较:StringBuilder > StringBuffer > String 2.String <(StringBuffer,StringBuilder)的原因 String:字符串常量 StringBuffer:字符串变量 StringBuilder:字符串变量 从上面 阅读全文
posted @ 2018-03-05 20:27 stanljj 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1、静态AOP:在编译期,切面直接以字节 码的形式编译到目标字节 码文件中。 AspectJ属于静态AOP,是在编译时进行增强,会在编译的时候将AOP逻辑织入到代码中,需要专有的编译器和织入器。 优点:被织入的类性能不受影响。 缺点:不够灵活 2、动态AOP(JDK动态代理):在运行期,目标类加载后 阅读全文
posted @ 2018-03-05 16:18 stanljj 阅读(9377) 评论(0) 推荐(1) 编辑
摘要: tcp协议和udp协议的差别 TCP UDP 是否连接 面向连接 面向非连接 传输可靠性 可靠 不可靠 应用场合 传输大量数据 少量数据 速度 慢 快1、TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。在传输 阅读全文
posted @ 2018-03-05 14:16 stanljj 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 20世纪90年代,单体架构,高度耦合的SOA架构 --> 2000年,通过中间件来实现服务之间的调用的轻耦合SOA架构 --> 2010年,更为轻耦合的微服务架构 阅读全文
posted @ 2018-03-05 09:54 stanljj 阅读(145) 评论(0) 推荐(0) 编辑