摘要: 博客园美化-随季节变化实现不同的飘落效果 最近在研究博客园的美化效果,看到有一个樱花飘落的效果,忽然突发奇想,如果能根据当前日期所处的季节实现不同的飘落效果岂不是更酷。😂 阅读全文
posted @ 2021-08-11 11:09 Liming_Code 阅读(2324) 评论(22) 推荐(39) 编辑
摘要: ES6中的模块化 历史上,JavaScript一直没有自己模块体系(module),无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。 其他语言如java、python等都具备这项功能,唯独Javascript没有 阅读全文
posted @ 2021-10-15 15:19 Liming_Code 阅读(2) 评论(0) 推荐(0) 编辑
摘要: JUC学习笔记(九) 线程池(英语:thread pool):一种线程使用模式。线程过多会带来调度开销, 进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。 阅读全文
posted @ 2021-08-19 16:35 Liming_Code 阅读(28) 评论(0) 推荐(0) 编辑
摘要: JUC学习笔记(八) Concurrent 包中,BlockingQueue 很好的解决了多线程中,如何高效安全 “传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建 高质量的多线程程序带来极大的便利。本文详细介绍了 BlockingQueue 家庭 中的所有成员,包括他们各自的功能以及常见使用场景。 阅读全文
posted @ 2021-08-19 11:41 Liming_Code 阅读(16) 评论(0) 推荐(0) 编辑
摘要: JUC学习笔记(七) 现实中有这样一种场景:对共享资源有读和写的操作,且写操作没有读操作那么频繁。在没有写操作的时候,多个线程同时读一个资源没有任何问题,所以应该允许多个线程同时读取共享资源;但是如果一个线程想去写这些共享资源,就不应该允许其他线程对该资源进行读和写的操作了。 阅读全文
posted @ 2021-08-16 11:41 Liming_Code 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 博客园美化-随季节变化实现不同的飘落效果 最近在研究博客园的美化效果,看到有一个樱花飘落的效果,忽然突发奇想,如果能根据当前日期所处的季节实现不同的飘落效果岂不是更酷。😂 阅读全文
posted @ 2021-08-11 11:09 Liming_Code 阅读(2324) 评论(22) 推荐(39) 编辑
摘要: JUC 中提供了三种常用的辅助类,通过这些辅助类可以很好的解决线程数量过多时 Lock 锁的频繁操作。 阅读全文
posted @ 2021-08-10 16:03 Liming_Code 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 创建线程的方法-一种是通过创建 Thread 类,另一种是通过使用 Runnable 创建线程。但是,Runnable 缺少的一项功能是,当线程终止时(即 run()完成时),我们无法使线程返回结果。为了支持此功能,Java 中提供了 Callable 接口。 阅读全文
posted @ 2021-08-10 14:04 Liming_Code 阅读(17) 评论(0) 推荐(0) 编辑
摘要: Vector 是矢量队列,它是 JDK1.0 版本添加的类。继承于 AbstractList,实现了 List, RandomAccess, Cloneable 这些接口。 Vector 继承了 AbstractList,实现了 List;所以,它是一个队列,支持相关的添加、删除、修改、遍历等功能。 Vector 实现了 RandmoAccess 接口,即提供了随机访问功能。 阅读全文
posted @ 2021-08-10 09:59 Liming_Code 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 线程间通信的模型有两种:共享内存和消息传递,以下方式都是基本这两种模型来实现的。我们来基本一道面试常见的题目来分析 阅读全文
posted @ 2021-08-09 15:37 Liming_Code 阅读(15) 评论(0) 推荐(0) 编辑
摘要: Lock 锁实现提供了比使用同步方法和语句可以获得的更广泛的锁操作。它们允 许更灵活的结构,可能具有非常不同的属性,并且可能支持多个关联的条件对象。Lock 提供了比 synchronized 更多的功能。 阅读全文
posted @ 2021-08-09 15:13 Liming_Code 阅读(41) 评论(0) 推荐(0) 编辑