摘要: Java 多线程基础(七)线程休眠 sleep 一、线程休眠 sleep sleep() 方法定义在Thread.java中,是 static 修饰的静态方法。sleep() 的作用是让当前线程休眠,即当前线程会从“运行状态”进入到“休眠(阻塞)状态”。sleep()会指定休眠时间,线程休眠的时间会 阅读全文
posted @ 2020-06-18 23:02 凌倾-学无止境 阅读(3151) 评论(0) 推荐(0) 编辑
摘要: Java 多线程基础(六)线程等待与唤醒 遇到这样一个场景,当某线程里面的逻辑需要等待异步处理结果返回后才能继续执行。或者说想要把一个异步的操作封装成一个同步的过程。这里就用到了线程等待唤醒机制。 一、wait()、notify()、notifyAll() 等方法介绍 在 Object 中,定义了 阅读全文
posted @ 2020-06-17 17:17 凌倾-学无止境 阅读(1078) 评论(0) 推荐(0) 编辑
摘要: Java 多线程基础(五)线程同步 当我们使用多个线程访问同一资源的时候,且多个线程中对资源有写的操作,就容易出现线程安全问题。 要解决上述多线程并发访问一个资源的安全性问题,Java中提供了同步机制(synchronized)来解决。 一、线程同步 当线程A进入操作的时候,线程B和线程C只能在外等 阅读全文
posted @ 2020-06-12 17:03 凌倾-学无止境 阅读(295) 评论(0) 推荐(0) 编辑
摘要: Java 多线程基础(四)线程安全 在多线程环境下,如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。 在了解线程安全之前,先来说一下Java的内存模型 JMM ,先了解多线程是如何工作的。 阅读全文
posted @ 2020-06-11 14:46 凌倾-学无止境 阅读(233) 评论(0) 推荐(0) 编辑
摘要: Java 多线程基础(三) start() 和 run() 通过之前的学习可以看到,创建多线程过程中,最常用的便是 Thread 类中的 start() 方法和线程类的 run() 方法。两个方法都包含在 Thread 类中。 一、start() 方法和run() 方法的区别 Thread 类中包含 阅读全文
posted @ 2020-06-10 12:46 凌倾-学无止境 阅读(352) 评论(0) 推荐(0) 编辑
摘要: Java 多线程基础(二)多线程的实现方式 在Java中,java使用Thread类代表线程,所有的线程对象都必须是Thread或者其子类的实例,每个线程的作用是完成一定任务,实际上是就是执行一段程序流(一段顺序执行的代码)。实现多线程一共有4种方式,分别是继承于Thread 类、实现 Runnab 阅读全文
posted @ 2020-06-06 20:24 凌倾-学无止境 阅读(177) 评论(0) 推荐(0) 编辑
摘要: Java 多线程基础(一)基本概念 一、并发与并行 1、并发:指两个或多个事件在同一个时间段内发生。 2、并行:指两个或多个事件在同一时刻发生(同时发生)。 在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单 CPU 系统中,每一时刻只能有一道程序执行,即微观上这些 阅读全文
posted @ 2020-06-05 20:41 凌倾-学无止境 阅读(365) 评论(0) 推荐(0) 编辑
摘要: Java 异常(二) 自定义异常 在开发中,为了适应业务的开发需求, 在 Java 中可以根据业务的异常情况自定义异常。 一、自定义异常 所有的自定义异常都必须是 Throwable 的子类,在自定义继承时可以继承于 Exception 或者它的子类。 二、自定义异常的分类 1、检查性异常类:自定义 阅读全文
posted @ 2020-06-04 19:16 凌倾-学无止境 阅读(1320) 评论(0) 推荐(1) 编辑
摘要: Java 异常(一) 异常概述及其架构 一、异常概述 (一)、概述 Java异常是Java提供的一种识别及响应错误的一致性机制。异常指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健 阅读全文
posted @ 2020-06-03 16:27 凌倾-学无止境 阅读(592) 评论(0) 推荐(0) 编辑
摘要: Java IO(二十一) 字符编码和字符集 一、字符编码 计算机中储存的信息都是用二进制数表示的,而我们在屏幕上看到的数字、英文、标点符号、汉字等字符是二进制数转换之后的结果。按照某种规则,将字符存储到计算机中,称为编码 。反之,将存储在计算机中的二进制数按照某种规则解析显示出来,称为解码 。比如说 阅读全文
posted @ 2020-06-02 09:48 凌倾-学无止境 阅读(329) 评论(0) 推荐(0) 编辑