# stool-juc-learning **Repository Path**: DongYunfei/stool-juc-learning ## Basic Information - **Project Name**: stool-juc-learning - **Description**: Java JUC notes - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-02-16 - **Last Updated**: 2023-02-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # stool-juc-learning #### 介绍 Java JUC test #### 软件架构 JDK17 #### note 1. 进程/线程是什么? 进程: 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。 线程: 通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程可以利用进程所拥有的资源,在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位,由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统多个程序间并发执行的程度。 2. 同步 ~~~ 在Java中一共有四种方法支持同步,其中前三个是同步方法,一个是管道方法。 1. 使用Object的wait() / notify()方法 2. 使用Lock和Condition的await() / signal()方法 3. 使用BlockingQueue阻塞队列方法 4. PipedInputStream / PipedOutputStream ~~~