上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 30 下一页
摘要: 线程终止有两种情况: 这两者属于线程自行终止,如何让线程 A 把线程 B 终止呢? Java 中 Thread 类有一个 stop() 方法,可以终止线程,不过这个方法会让线程直接终止,在执行的任务立即终止,未执行的任务无法反馈,所以 stop() 方法已经不建议使用。 既然 stop() 方法如此 阅读全文
posted @ 2019-11-28 11:29 ConstXiong 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 线程的安全性问题体现在: 原子性:一个或者多个操作在 CPU 执行的过程中不被中断的特性 可见性:一个线程对共享变量的修改,另外一个线程能够立刻看到 有序性:程序执行的顺序按照代码的先后顺序执行 导致原因: 缓存导致的可见性问题 线程切换带来的原子性问题 编译优化带来的有序性问题 解决办法: JDK 阅读全文
posted @ 2019-11-28 11:20 ConstXiong 阅读(3253) 评论(0) 推荐(0) 编辑
摘要: CPU、内存、IO 设备的读写速度差异巨大,表现为 CPU 的速度 > 内存的速度 > IO 设备的速度。 程序的性能瓶颈在于速度最慢的 IO 设备的读写,也就是说当涉及到 IO 设备的读写,再怎么提升 CPU 和内存的速度也是起不到提升性能的作用。 为了更好地利用 CPU 的高性能 计算机体系结构 阅读全文
posted @ 2019-11-28 11:19 ConstXiong 阅读(395) 评论(0) 推荐(0) 编辑
摘要: Java 中的线程对应是操作系统级别的线程,线程数量控制不好,频繁的创建、销毁线程和线程间的切换,比较消耗内存和时间。 容易带来线程安全问题。如线程的可见性、有序性、原子性问题,会导致程序出现的结果与预期结果不一致。 多线程容易造成死锁、活锁、线程饥饿等问题。此类问题往往只能通过手动停止线程、甚至是 阅读全文
posted @ 2019-11-28 11:17 ConstXiong 阅读(338) 评论(0) 推荐(0) 编辑
摘要: "摩尔定律" 失效,硬件的单元计算能力提升受限;硬件上提高了 CPU 的核数和个数。并发编程可以提升 CPU 的计算能力的利用率。 提升程序的性能,如:响应时间、吞吐量、计算机资源使用率等。 并发程序可以更好地处理复杂业务,对复杂业务进行多任务拆分,简化任务调度,同步执行任务。 Java 自学指南 阅读全文
posted @ 2019-11-27 09:11 ConstXiong 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 并发: 在程序设计的角度,希望通过某些机制让计算机可以在一个时间段内,执行多个任务。 一个或多个物理 CPU 在多个程序之间多路复用,提高对计算机资源的利用率。 任务数多余 CPU 的核数,通过操作系统的任务调度算法,实现多个任务一起执行。 有多个线程在执行,计算机只有一个 CPU,不可能真正同时运 阅读全文
posted @ 2019-11-27 09:10 ConstXiong 阅读(429) 评论(0) 推荐(0) 编辑
摘要: Java 中有 4 种常见的创建线程的方式。 一、重写 Thread 类的 run() 方法。 表现形式有两种:1)new Thread 对象匿名重写 run() 方法 2)继承 Thread 对象,重写 run() 方法 执行结果 二、实现 Runnable 接口,重写 run() 方法。 表现形 阅读全文
posted @ 2019-11-27 09:07 ConstXiong 阅读(476) 评论(0) 推荐(0) 编辑
摘要: Java线程分为用户线程和守护线程。 守护线程是程序运行的时候在后台提供一种通用服务的线程。所有用户线程停止,进程会停掉所有守护线程,退出程序。 Java中把线程设置为守护线程的方法:在 start 线程之前调用线程的 setDaemon(true) 方法。 注意: setDaemon(true) 阅读全文
posted @ 2019-11-27 09:05 ConstXiong 阅读(3904) 评论(0) 推荐(0) 编辑
摘要: 进程: 程序执行时的一个实例 每个进程都有独立的内存地址空间 系统进行资源分配和调度的基本单位 进程里的堆,是一个进程中最大的一块内存,被进程中的所有线程共享的,进程创建时分配,主要存放 new 创建的对象实例 进程里的方法区,是用来存放进程中的代码片段的,是线程共享的 在多线程 OS 中,进程不是 阅读全文
posted @ 2019-11-27 09:04 ConstXiong 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 并行:指两个或两个以上事件或活动在同一时刻发生。如多个任务在多个 CPU 或 CPU 的多个核上同时执行,不存在 CPU 资源的竞争、等待行为。 并行与并发的区别 并行指多个事件在同一个时刻发生;并发指在某时刻只有一个事件在发生,某个时间段内由于 CPU 交替执行,可以发生多个事件。 并行没有对 C 阅读全文
posted @ 2019-11-27 09:03 ConstXiong 阅读(652) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 30 下一页