您的位置:首页 > 其它

222

2020-02-01 20:35 274 查看

多线程它主要就是当他处理某一个数据的时候,单一线程他处理非常低的时候,这时候我们会采用一个多线程的操作。多线程会有一个变量他是不安全的,就是某个共享变量,修改的时候他是线程不安全的,为保证他线程安全会加一个 锁

克莱克神四‘
:通过Collections.synchronizedMap()返回一个新的Map,这个新的map就是线程安全的. 这个要求大家习惯基于接口编程,因为返回的并不是HashMap,而是一个Map的实现.

Hashset底层是用什么实现的?他底层为什么为去重?因为她的值是采用HashMap的,他把她的值当做HashMap的key值进行一个存储。
ArrayList底层是用数组格的

.ArrayList底层是数组,数组是适合查询的,因为数组每个元素的内存空间是固定的,每次查询时,只需要去查询对应位置的内存空间,就可以很快找到相应的值。而数组不擅长的是添加和删除。试想,集合长度是100000,而我们在第2个位置添加了一个元素,导致的结果是从第3个开始后面每一个元素都要往后串一个元素内存空间那么大的位置。删除刚好相反,是向前串一个位置,这样的效率是很低的,元素越多,效率越低。





根据数据库的功能,可以在数据库设计器中创建三种索引:唯一索引、主键索引和聚集索引。数据库优化链接
分库分表:
分库一般就是把一台服务器上的一台服务器分到多台服务器上,然后减轻他的一个压力,加快他的一个查询效率,然后分表的话他有一个水平分表和垂直分表,一般垂直分表我们一般是根据他那个使用次数的,就是以某个字段是否使用频率非常高的话,会给他进行一个单独分到一张表,或者是某个字段太影响效率的话。一张表数据太多的话会给他一个水平划分。 数据库分库分表
数据库连接池

  • 点赞
  • 收藏
  • 分享
  • 文章举报
放牛的小牧童 发布了7 篇原创文章 · 获赞 0 · 访问量 150 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: