摘要: 线程安全问题 多个线程并发执行时,修改了共享内存中共享对象的属性,导致数据冲突问题 线程 t1 和线程 t2 都修改和读取同一个对象 user,由于并发执行,t1写入后没有直接读取,此时 t2 也在执行,进行写入,然后 t1 t2 再分别读取,此时对象的数据是 t2写入的结果,t1的写入被覆盖了。 阅读全文
posted @ 2023-01-05 11:19 LaViez 阅读(17) 评论(0) 推荐(0)
摘要: wait和sleep方法比较 含义 wait:等待,需要等待其他对象来结束该状态 sleep:休眠,一定时长后自动醒来 从属关系 wait:Object类中声明定义的方法,成员方法,所有对象都可使用 sleep:Thread类中声明定义的静态方法,只有线程类对象可使用 使用方式 wait:只能使用在 阅读全文
posted @ 2023-01-05 10:43 LaViez 阅读(34) 评论(0) 推荐(0)
摘要: Synchronized 同步 方法被synchronized 关键字修饰后成为同步方法 多线程访问同步方法时,只能顺序访问,每次访问只有一个执行 Hashtable -- 方法同步:对一个对象的增删改查等同时只能执行一个,效率低,换来数据的一致性 HashMap -- 方法异步:可以同时执行许多操 阅读全文
posted @ 2023-01-05 10:32 LaViez 阅读(35) 评论(0) 推荐(0)
摘要: 线程池 线程对象的容器 4种比较常见的线程池 创建固定数量的线程对象 ExecutorService executorService = Executors.newFixedThreadPool(3); 根据需要动态创建线程线程 -- 线程数量够用时复用,数量不够时创建新线程 ExecutorSer 阅读全文
posted @ 2023-01-05 09:53 LaViez 阅读(17) 评论(0) 推荐(0)
摘要: 构建线程的三种方式 方式1:自定义线程类继承Thread 方式2:创建线程对象时传递运行逻辑 方式3:创建线程对象时传递实现了Runnable接口的类的对象 public class ThreadWork { public static void main(String[] args) throws 阅读全文
posted @ 2023-01-04 16:54 LaViez 阅读(23) 评论(0) 推荐(0)
摘要: 线程执行方式 串行执行:多个线程连接成串,按序执行 并发执行(默认):多个线程独立,谁抢到CPU执行器,谁就执行 public class _Thread { public static void main(String[] args) throws Exception{ //TODO Thread 阅读全文
posted @ 2023-01-04 16:31 LaViez 阅读(29) 评论(0) 推荐(0)
摘要: 进程与线程 process 进程:运行中的程序 一个process可以包含多个thread thread线程:类似流水线中的段,实现进程中的一个功能 一个Java进程至少包含一个主线程-main线程,其中运行着main方法 线程6种状态 线程创建与运行 public class _Thread { 阅读全文
posted @ 2023-01-04 16:14 LaViez 阅读(19) 评论(0) 推荐(0)
摘要: 序列化与反序列化 序列化:将对象转换为字节读取至文件中 反序列化:将文件中的字节输出为对象 public class FileObject { public static void main(String[] args) throws Exception{ //TODO IO 序列化&反序列化 // 阅读全文
posted @ 2023-01-04 15:29 LaViez 阅读(87) 评论(0) 推荐(0)
摘要: IO - 文件 - 字符流 BufferedReader\PrintWriter 每次传输一行数据 public class FileString { public static void main(String[] args) throws Exception{ //TODO IO 文件复制 // 阅读全文
posted @ 2023-01-04 15:02 LaViez 阅读(133) 评论(0) 推荐(0)
摘要: buffer public class FileCopy_Buffer { public static void main(String[] args) throws Exception{ //TODO IO 文件复制 //数据源文件对象 File srcFile = new File("E:\\. 阅读全文
posted @ 2023-01-04 14:39 LaViez 阅读(98) 评论(0) 推荐(0)