摘要:
代码搜索网站: 1、代码: GitHub | Codase | Krugle | Merobase Component Finder | Google Code Archive 2、SymbolHound 可以搜索特殊符号的搜索引擎,遇到Bash、正则之类问题的解决利器 3、Hoogle Haske 阅读全文
摘要:
1、申请方式 stack:由系统自动分配。例如,声明在函数中一个局部变量 int b; 系统自动在栈中为 b 开辟空间 heap:需要程序员自己申请,并指明大小,在 c 中 malloc 函数,对于 Java 需要手动 new Object()的形式开辟 2、申请后系统的响应 stack:只要栈的剩 阅读全文
摘要:
a):Java内存模型(方法区、本地方法栈、虚拟机栈、程序计数器、堆) Java虚拟机将其管辖的内存大致分为三个逻辑部分:方法区(Method Area)、Java栈和Java堆 1、方法区是静态分配的,编译器变量绑定在某个存储位置上,而且这些绑定不会在运行时改变。 常数池,源代码中的命名常量,St 阅读全文
摘要:
静态代理通常只代理一个类,动态代理是代理一个接口下的多个实现类 静态代理事先要知道代理的是什么 ,而动态代理不知道要代理什么东西,只有在运行时才知道。 动态代理是实现JDK里面的InvocationHandler接口里面的invoke方法,但注意的是代理的是接口,也就是说你的业务类必须要实现接口,通 阅读全文
摘要:
Linux的简介 Linux系统作为服务器操作系统,完成项目的部署;比较方便搭建集群环境 Linux目录结构 Linux命令 文件命令: mkdir:创建目录 mkdir目录名(可以是相对路径也可以是绝对路径) -p:可以创建父级目录;如果父级目录已经存在,也不会报错 mkdir -p a/b/c/ 阅读全文
摘要:
Jedis的使用? Jedis就是redis提供的Java客户端工具(在Java代码中,直接通过jedis就可以操作redis数据库) 加载jedis依赖 连接redis服务器(创建jedis对象;相当于jdbc的connection、mybatis的sqlsession) 通过jedis对象中的方 阅读全文
摘要:
1、redis的认识? redis(Remote Dictionary Server远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库(非关系型数据库),并提供了多种语言的API。 非关系型数据库的特点: 1):数据结构比较简单(通过 阅读全文
摘要:
线程通信的方式: 1、共享变量 线程间通信可以通过发送信号,发送信号的一个简单方式是在共享对象的变量里设置信号值。线程A在一个同步块里设置boolean型成员变量hasDataToProcess为true,线程B也在同步代码块里读取hasDataToProcess这个成员变量。这个简单的例子使用了一 阅读全文
摘要:
1、死锁的定义 所谓死锁是指多个线程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进 2、死锁产生的必要条件 互斥条件:线程要求对所分配的资源(如打印机)进行排他性控制,即在一段时间内某资源仅为一个线程所占有。此时若有线程请求该资源,则请求线程只能等待。 不剥夺条件:线 阅读全文
摘要:
import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /** * 同一个类中的2个方法都加了同步锁,多个线程能同时访问同一个类中的两个方法吗? * 这个问题需要考虑到Lock与 阅读全文