首页
文章
分类
标签
归档
友链
瞬间
公众号
小程序
关于
登录
菜单
首页
文章
分类
标签
归档
友链
瞬间
公众号
小程序
关于
青云博客
记录、分享
归档
2024 年 04 月
什么情况线程会进入 WAITING 状态
2024-04-22
Java
线程进入WAITING状态有以下几种情况: 调用Object.wait()方法,该方法会使得当前线程进入等待状态,等待其他线程调用同一个对象的notify()或notifyAll()方法唤醒该线程。 调用Thread.join()方法,该方法会使得当前线程等待指定线程的结束,当指定线程结束时,当前线
如何避免死锁
2024-04-22
Java
死锁是多线程编程中的一种常见问题,它发生在两个或多个线程相互等待对方释放资源的情况下,导致程序无法继续执行。为了避免死锁,我们可以采用以下策略: 锁顺序: 定义一个固定的锁获取顺序,并要求所有线程都按照相同的顺序获取锁。这可以减少不同线程之间资源争夺的可能性。 超时机制:
Java线程之间是如何通信的
2024-04-22
Java
当我们处理线程通信时,通常有两种主要的实现方式,每种方式都有其独特的机制和优势: 共享内存: 这是一种常见的方式,多个线程可以访问同一个共享内存区域,通过读取和写入共享内存中的数据来进行通信和同步。在Java中,我们可以使用共享变量或共享数据结构来实现共享内存通信。例如,可以使用 volatile
JAVA 中用到的线程调度算法是什么
2024-04-22
Java
在Java中,线程调度采用的是一种抢占式调度模型。这就像在一个抢夺战中,有较高优先级的线程将首先占用CPU资源。如果线程具有相同的优先级,那么Java虚拟机会随机选择一个线程来执行,以保持公平竞争的原则。一旦一个线程获得了CPU,它将一直运行,直到自愿放弃CPU资源,或者由于某些情况(比如等待I/O
说说进程和线程的区别
2024-04-22
Java
当一个程序在计算机上运行时,通常会创建至少一个进程。进程被认为是操作系统分配资源的最小单元,每个进程都拥有独立的内存空间和系统资源,包括文件句柄和网络连接等。操作系统通常使用进程来表示独立的应用程序实例。比如,你的计算机上可能同时运行着浏览器、文本编辑器、音乐播放器等多个进程。 每个进程至少包含一个
说下Fork/Join框架,与传统线程池有何不同
2024-04-22
Java
Fork/Join框架是一个用于并行化执行任务的框架,它是Java 7引入的一个新特性,专门用于方便地利用多核CPU的性能优势,通过分治法的策略来将任务分解为更小的子任务,然后并行执行这些子任务,最后再合并子任务的结果。 Fork/Join框架的核心是ForkJoinPool,它是一种特殊的线程池,
说说并发和并行的区别
2024-04-22
Java
并发针对单核 CPU 而言,它指的是 多个任务交替执行,每个任务都会在一段时间内执行一部分,然后切换到另一个任务,因为单核 CPU 一次只能执行一个任务。并发的目的是提高系统的响应性和吞吐量,允许多个任务在同一个处理器上共享时间片。 并行针对多核 CPU 而言,它指的是多个任务真正同时执行,每个任务
什么是阻塞队列,举几个应用场景
2024-04-22
Java
阻塞队列(BlockingQueue)是一种特殊类型的队列,它用于在多线程环境中实现线程之间的通信。常见的Java阻塞队列实现包括:ArrayBlockingQueue、LinkedBlockingQueue、PriorityBlockingQueue等。 阻塞队列具有以下特点: 当队列为空时,从队
BIO、NIO、AIO有什么区别
2024-04-22
Java
他们三者都是Java中常用的I/O模型,我们从以下三个维度进行对比: 阻塞与非阻塞: BIO是阻塞式I/O模型,线程会一直被阻塞等待操作完成。 NIO是非阻塞式I/O模型,线程可以去做其他任务,当I/O操作完成时得到通知。 AIO也是非阻塞式I/O模型,不需要用户线程关注I/O事件,由操作系统通过回
Java 中有了基本类型为什么还需要包装类?
2024-04-22
Java
首先,包装类的主要作用是让基本类型具备对象的特性。Java是面向对象的语言,但基本类型不是对象,这会导致在一些需要对象的场景下无法使用基本类型。比如在集合框架中(如ArrayList、HashMap等)就只能存储对象,不能存储基本类型。 其次,包装类提供了更多实用的方法。例如Integer类提供了p
上一页
1 / 49
2 / 49
3 / 49
4 / 49
5 / 49
6 / 49
7 / 49
8 / 49
9 / 49
10 / 49
11 / 49
12 / 49
13 / 49
14 / 49
15 / 49
16 / 49
17 / 49
18 / 49
19 / 49
20 / 49
21 / 49
22 / 49
23 / 49
24 / 49
25 / 49
26 / 49
27 / 49
28 / 49
29 / 49
30 / 49
31 / 49
32 / 49
33 / 49
34 / 49
35 / 49
36 / 49
37 / 49
38 / 49
39 / 49
40 / 49
41 / 49
42 / 49
43 / 49
44 / 49
45 / 49
46 / 49
47 / 49
48 / 49
49 / 49
下一页