java核心编程
文章平均质量分 60
这里主要做一些java核心相关的一些记录,这个真的太重要了!
精灵鼠小强
一个程序员
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
什么是Fork/Join框架、适用场景
Fork/Join 框架是一种高效的并发编程模型,特别适用于可以分解为子任务的问题。通过使用 Fork/Join 框架,可以轻松地实现并行处理,提高程序的执行效率。原创 2024-08-01 13:48:52 · 512 阅读 · 0 评论 -
Java如何实现线程安全的自增
AtomicInteger:提供原子操作,最适合实现线程安全的自增操作。synchronized 关键字:可以同步方法或代码块,确保同一时间只有一个线程可以访问。ReentrantLock:提供更灵活的锁机制,可以用来实现线程安全的自增操作。ThreadLocal:为每个线程提供独立的计数器副本,适用于不需要共享计数器的情况。原创 2024-08-01 10:41:47 · 933 阅读 · 0 评论 -
自定义异常的使用场景
在单元测试中,抛出自定义异常可以帮助验证特定条件下的行为。例如,你可以编写测试用例来确保在特定条件下会抛出预期的异常。当你需要表示应用程序中特定的业务逻辑错误时,自定义异常是非常有用的。例如,在一个数据中台系统中,相关的异常如下所示。自定义异常可以用来控制程序的流程,例如跳过某些处理步骤或终止某个过程。原创 2024-07-31 11:20:42 · 531 阅读 · 0 评论 -
Java的集合类有哪些,以及在实际项目中如何使用
集合类描述1.1 CollectionCollection 是一个接口,它代表一组对象。Collection 的主要实现包括 List, Set, 和 Queue。List:ArrayList:可变大小的列表,内部使用数组实现,支持随机访问元素。LinkedList:基于双向链表实现的列表,适合频繁插入和删除操作。Vector:与 ArrayList 类似,但 Vector 方法都是同步的,适用于多线程环境。Stack:继承自 Vector,实现了后进先出(LIFO)的栈数据结构。原创 2024-07-31 10:43:09 · 363 阅读 · 0 评论 -
集合类是怎么解决高并发问题的
线程非安全的集合类包含了ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap,实际开发中我们自己使用最多的一般是这样的集合,因为一般情况下我们自己写的业务代码中涉及到多线程共享同一个集合的问题。我们都是在一个函数方法内使用到了容器集合,而这种局部的容器使用方式,是线程之间隔离的,不会存在线程安全问题。线程安全的集合类包含了Vector、HashTable虽然没有JUC中的高性能集合高,但是也能够适应大部分的环境。原创 2024-07-31 10:33:08 · 565 阅读 · 0 评论 -
Java线程池满了,导致触发了拒绝策略的问题
一个同事写需求的时候,使用了线程池,出了问题,这里记录一下。 首先他的需求是进行定时每天统计点击数据申请请求(一个接口),为了解耦,他使用了AOP+注解的方式,获取到那个请求的操作,并进行统计,不过由于是切面操作,只要有用户点击这个按钮触发这个请求就会走他的切面的逻辑,而且由于他计算的过程需要调用其他服务接口(远程调用),有一定的耗时操作,为了提高用户体验,他就使用了线程执行方式进行异步操作。 这里他使用的是Executors.newSingleThreadExecutor的方式进行创建的线原创 2021-12-15 20:23:38 · 4191 阅读 · 0 评论 -
多线程同时读写操作List引发的异常问题
今天运行刚写的本地程序的时候发现偶发性的出现如下异常。java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) at java.util.ArrayList$Itr.next(ArrayList.java:851) at ys.manufacture.dip.etl.listener.TaskLogListener$1.run(Ta原创 2021-12-16 09:02:03 · 1998 阅读 · 0 评论
分享