摘要: 阅读全文
posted @ 2023-03-06 11:59 千里兮兮 阅读(25) 评论(0) 推荐(0)
摘要: 1.索引类似于数据库表的目录,可以快速定位到相关数据 2.innodb使用b+树索引。memory中使用hash索引 3.hash索引因为使用hash存储,所以单条查询速度快,但是因为hash无序,所以范围查找慢。而B+树则更适合范围查询或者排序查询 阅读全文
posted @ 2023-03-06 11:28 千里兮兮 阅读(13) 评论(0) 推荐(0)
摘要: 1.delete 在innodb中并非真的删除,而是设置成删除状态,在取消自动提交的状态下,可以通过回滚来撤销删除。且不会重置自增列的开始数值。 2.truncate跟delete类似,删除了行数据,保留了列数据,但是不支持条件删除,且是ddl语言 而非dml,同时会重置自增列。无法恢复数据 3.d 阅读全文
posted @ 2023-03-06 10:54 千里兮兮 阅读(31) 评论(0) 推荐(0)
摘要: 1.innodb(MySQL默认的存储引擎) 支持事务,适用于要求事务完整性的场景 2.myisam不支持事务,但读写性能更高 3.memory,存储在内存的表,断电会消失,但去写效率高,适用于临时表 存储引擎可以根据表的创建进行单独的设置 阅读全文
posted @ 2023-03-06 10:43 千里兮兮 阅读(16) 评论(0) 推荐(0)
摘要: 1.懒汉(双重校验加volatile) 2.饿汉 3.静态内部类 4.枚举 阅读全文
posted @ 2023-03-05 00:11 千里兮兮 阅读(13) 评论(0) 推荐(0)
摘要: 1.资源的互斥,同一时间段资源只能被一个线程占用 2.线程有了一个资源后,又要获得其他的资源(而该资源又被其他单元所占有,而自己的资源又不释放) 3.线程所占有的资源不能被其他单元强制剥夺 4.资源和线程形成环形等待 同时满足以上四点就会产生死锁 可以使用jdk,bin目录下的jconsole来进行 阅读全文
posted @ 2023-03-04 23:45 千里兮兮 阅读(15) 评论(0) 推荐(0)
摘要: 1.禁止指令重排 2.内存模型可见 阅读全文
posted @ 2023-03-04 22:09 千里兮兮 阅读(11) 评论(0) 推荐(0)
摘要: 1.调用thread.stop()方法为过期方法,强制停止线程且存在安全隐患 class FlagThread extends Thread { // 自定义中断标识符 public volatile boolean isInterrupt = false; @Override public voi 阅读全文
posted @ 2023-02-27 11:08 千里兮兮 阅读(58) 评论(0) 推荐(0)
摘要: 两者需要搭配synchronized一起使用,否则会出现并发安全问题 阅读全文
posted @ 2023-02-27 10:36 千里兮兮 阅读(24) 评论(0) 推荐(0)
摘要: public class Demo { public static void main(String[] args) { for (Thread.State t:Thread.State.values() ) { System.out.println(t); } } } 六种状态: NEW RUNN 阅读全文
posted @ 2023-02-27 10:20 千里兮兮 阅读(17) 评论(0) 推荐(0)